diff options
Diffstat (limited to 'Tests/MODELS2020-CaseStudies/case.study.familyTree.run/outputs/debug/generation.logicproblem')
-rw-r--r-- | Tests/MODELS2020-CaseStudies/case.study.familyTree.run/outputs/debug/generation.logicproblem | 190 |
1 files changed, 190 insertions, 0 deletions
diff --git a/Tests/MODELS2020-CaseStudies/case.study.familyTree.run/outputs/debug/generation.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.familyTree.run/outputs/debug/generation.logicproblem new file mode 100644 index 00000000..dd3b15b1 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.familyTree.run/outputs/debug/generation.logicproblem | |||
@@ -0,0 +1,190 @@ | |||
1 | <?xml version="1.0" encoding="ASCII"?> | ||
2 | <language:LogicProblem xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore2logicannotations="http://www.bme.hu/mit/inf/dslreasoner/logic/model/language/ecore2logicannotation" xmlns:language="http://www.bme.hu/mit/inf/dslreasoner/logic/model/problem" xmlns:language_1="http://www.bme.hu/mit/inf/dslreasoner/logic/model/language" xmlns:viatra2logicannotations="http://www.bme.hu/mit/inf/dslreasoner/logic/model/language/viatra2logicannotation"> | ||
3 | <types xsi:type="language_1:TypeDeclaration" name="FamilyTree class"/> | ||
4 | <types xsi:type="language_1:TypeDeclaration" name="Member class"/> | ||
5 | <assertions name="upperMultiplicity parents Member" annotations="//@annotations.0"> | ||
6 | <value xsi:type="language_1:Forall"> | ||
7 | <quantifiedVariables name="src"> | ||
8 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
9 | </quantifiedVariables> | ||
10 | <quantifiedVariables name="trg 1"> | ||
11 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
12 | </quantifiedVariables> | ||
13 | <quantifiedVariables name="trg 2"> | ||
14 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
15 | </quantifiedVariables> | ||
16 | <quantifiedVariables name="trg 3"> | ||
17 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
18 | </quantifiedVariables> | ||
19 | <expression xsi:type="language_1:Impl"> | ||
20 | <leftOperand xsi:type="language_1:And"> | ||
21 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.2"> | ||
22 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.0/@value/@quantifiedVariables.0"/> | ||
23 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.0/@value/@quantifiedVariables.1"/> | ||
24 | </operands> | ||
25 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.2"> | ||
26 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.0/@value/@quantifiedVariables.0"/> | ||
27 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.0/@value/@quantifiedVariables.2"/> | ||
28 | </operands> | ||
29 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.2"> | ||
30 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.0/@value/@quantifiedVariables.0"/> | ||
31 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.0/@value/@quantifiedVariables.3"/> | ||
32 | </operands> | ||
33 | </leftOperand> | ||
34 | <rightOperand xsi:type="language_1:Not"> | ||
35 | <operand xsi:type="language_1:Distinct"> | ||
36 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.0/@value/@quantifiedVariables.1"/> | ||
37 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.0/@value/@quantifiedVariables.2"/> | ||
38 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.0/@value/@quantifiedVariables.3"/> | ||
39 | </operand> | ||
40 | </rightOperand> | ||
41 | </expression> | ||
42 | </value> | ||
43 | </assertions> | ||
44 | <assertions name="oppositeReference children Member" annotations="//@annotations.1"> | ||
45 | <value xsi:type="language_1:Forall"> | ||
46 | <quantifiedVariables name="src"> | ||
47 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
48 | </quantifiedVariables> | ||
49 | <quantifiedVariables name="trg"> | ||
50 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
51 | </quantifiedVariables> | ||
52 | <expression xsi:type="language_1:Iff"> | ||
53 | <leftOperand xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.1"> | ||
54 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.1/@value/@quantifiedVariables.0"/> | ||
55 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.1/@value/@quantifiedVariables.1"/> | ||
56 | </leftOperand> | ||
57 | <rightOperand xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.2"> | ||
58 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.1/@value/@quantifiedVariables.1"/> | ||
59 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.1/@value/@quantifiedVariables.0"/> | ||
60 | </rightOperand> | ||
61 | </expression> | ||
62 | </value> | ||
63 | </assertions> | ||
64 | <assertions name="upperMultiplicity name Member" annotations="//@annotations.2"> | ||
65 | <value xsi:type="language_1:Forall"> | ||
66 | <quantifiedVariables name="src"> | ||
67 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
68 | </quantifiedVariables> | ||
69 | <quantifiedVariables name="trg 1"> | ||
70 | <range xsi:type="language_1:StringTypeReference"/> | ||
71 | </quantifiedVariables> | ||
72 | <quantifiedVariables name="trg 2"> | ||
73 | <range xsi:type="language_1:StringTypeReference"/> | ||
74 | </quantifiedVariables> | ||
75 | <expression xsi:type="language_1:Impl"> | ||
76 | <leftOperand xsi:type="language_1:And"> | ||
77 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.3"> | ||
78 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.2/@value/@quantifiedVariables.0"/> | ||
79 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.2/@value/@quantifiedVariables.1"/> | ||
80 | </operands> | ||
81 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.3"> | ||
82 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.2/@value/@quantifiedVariables.0"/> | ||
83 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.2/@value/@quantifiedVariables.2"/> | ||
84 | </operands> | ||
85 | </leftOperand> | ||
86 | <rightOperand xsi:type="language_1:Not"> | ||
87 | <operand xsi:type="language_1:Distinct"> | ||
88 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.2/@value/@quantifiedVariables.1"/> | ||
89 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.2/@value/@quantifiedVariables.2"/> | ||
90 | </operand> | ||
91 | </rightOperand> | ||
92 | </expression> | ||
93 | </value> | ||
94 | </assertions> | ||
95 | <assertions name="upperMultiplicity age Member" annotations="//@annotations.3"> | ||
96 | <value xsi:type="language_1:Forall"> | ||
97 | <quantifiedVariables name="src"> | ||
98 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
99 | </quantifiedVariables> | ||
100 | <quantifiedVariables name="trg 1"> | ||
101 | <range xsi:type="language_1:IntTypeReference"/> | ||
102 | </quantifiedVariables> | ||
103 | <quantifiedVariables name="trg 2"> | ||
104 | <range xsi:type="language_1:IntTypeReference"/> | ||
105 | </quantifiedVariables> | ||
106 | <expression xsi:type="language_1:Impl"> | ||
107 | <leftOperand xsi:type="language_1:And"> | ||
108 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.4"> | ||
109 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.3/@value/@quantifiedVariables.0"/> | ||
110 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.3/@value/@quantifiedVariables.1"/> | ||
111 | </operands> | ||
112 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.4"> | ||
113 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.3/@value/@quantifiedVariables.0"/> | ||
114 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.3/@value/@quantifiedVariables.2"/> | ||
115 | </operands> | ||
116 | </leftOperand> | ||
117 | <rightOperand xsi:type="language_1:Not"> | ||
118 | <operand xsi:type="language_1:Distinct"> | ||
119 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.3/@value/@quantifiedVariables.1"/> | ||
120 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.3/@value/@quantifiedVariables.2"/> | ||
121 | </operand> | ||
122 | </rightOperand> | ||
123 | </expression> | ||
124 | </value> | ||
125 | </assertions> | ||
126 | <assertions name="errorpattern queries memberIsItsOwnParent" annotations="//@annotations.5"> | ||
127 | <value xsi:type="language_1:Forall"> | ||
128 | <quantifiedVariables name="p0"> | ||
129 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
130 | </quantifiedVariables> | ||
131 | <expression xsi:type="language_1:Not"> | ||
132 | <operand xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.5"> | ||
133 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.4/@value/@quantifiedVariables.0"/> | ||
134 | </operand> | ||
135 | </expression> | ||
136 | </value> | ||
137 | </assertions> | ||
138 | <relations xsi:type="language_1:RelationDeclaration" name="members reference FamilyTree"> | ||
139 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.0"/> | ||
140 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
141 | </relations> | ||
142 | <relations xsi:type="language_1:RelationDeclaration" name="children reference Member"> | ||
143 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
144 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
145 | </relations> | ||
146 | <relations xsi:type="language_1:RelationDeclaration" name="parents reference Member"> | ||
147 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
148 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
149 | </relations> | ||
150 | <relations xsi:type="language_1:RelationDeclaration" name="name attribute Member"> | ||
151 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
152 | <parameters xsi:type="language_1:StringTypeReference"/> | ||
153 | </relations> | ||
154 | <relations xsi:type="language_1:RelationDeclaration" name="age attribute Member"> | ||
155 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
156 | <parameters xsi:type="language_1:IntTypeReference"/> | ||
157 | </relations> | ||
158 | <relations xsi:type="language_1:RelationDefinition" name="pattern queries memberIsItsOwnParent" annotations="//@annotations.4"> | ||
159 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
160 | <variables name="parameter m"> | ||
161 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.1"/> | ||
162 | </variables> | ||
163 | <value xsi:type="language_1:Or"> | ||
164 | <operands xsi:type="language_1:Exists"> | ||
165 | <quantifiedVariables name="variable 0"> | ||
166 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.0"/> | ||
167 | </quantifiedVariables> | ||
168 | <expression xsi:type="language_1:And"> | ||
169 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.0"> | ||
170 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.5/@value/@operands.0/@quantifiedVariables.0"/> | ||
171 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.5/@variables.0"/> | ||
172 | </operands> | ||
173 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.2"> | ||
174 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.5/@variables.0"/> | ||
175 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.5/@variables.0"/> | ||
176 | </operands> | ||
177 | </expression> | ||
178 | </operands> | ||
179 | </value> | ||
180 | </relations> | ||
181 | <containmentHierarchies typesOrderedInHierarchy="//@types.0 //@types.1" containmentRelations="//@relations.0"/> | ||
182 | <annotations xsi:type="ecore2logicannotations:UpperMultiplicityAssertion" target="//@assertions.0" relation="//@relations.2" upper="2"/> | ||
183 | <annotations xsi:type="ecore2logicannotations:InverseRelationAssertion" target="//@assertions.1" inverseA="//@relations.1" inverseB="//@relations.2"/> | ||
184 | <annotations xsi:type="ecore2logicannotations:UpperMultiplicityAssertion" target="//@assertions.2" relation="//@relations.3" upper="1"/> | ||
185 | <annotations xsi:type="ecore2logicannotations:UpperMultiplicityAssertion" target="//@assertions.3" relation="//@relations.4" upper="1"/> | ||
186 | <annotations xsi:type="viatra2logicannotations:TransfomedViatraQuery" target="//@relations.5" patternFullyQualifiedName="queries.memberIsItsOwnParent"> | ||
187 | <variableTrace targetLogicVariable="//@relations.5/@value/@operands.0/@quantifiedVariables.0"/> | ||
188 | </annotations> | ||
189 | <annotations xsi:type="viatra2logicannotations:TransformedViatraWellformednessConstraint" target="//@assertions.4" query="//@annotations.4"/> | ||
190 | </language:LogicProblem> | ||