aboutsummaryrefslogtreecommitdiffstats
path: root/Framework/hu.bme.mit.inf.dslreasoner.logic.model/model/logiclanguage.ecore
diff options
context:
space:
mode:
authorLibravatar OszkarSemerath <oszka@152.66.252.189>2017-06-10 19:05:05 +0200
committerLibravatar OszkarSemerath <oszka@152.66.252.189>2017-06-10 19:05:05 +0200
commit60f01f46ba232ed6416054f0a6115cb2a9b70b4e (patch)
tree5edf8aeb07abc51f3fec63bbd15c926e1de09552 /Framework/hu.bme.mit.inf.dslreasoner.logic.model/model/logiclanguage.ecore
parentInitial commit, migrating from SVN (diff)
downloadVIATRA-Generator-60f01f46ba232ed6416054f0a6115cb2a9b70b4e.tar.gz
VIATRA-Generator-60f01f46ba232ed6416054f0a6115cb2a9b70b4e.tar.zst
VIATRA-Generator-60f01f46ba232ed6416054f0a6115cb2a9b70b4e.zip
Migrating Additional projects
Diffstat (limited to 'Framework/hu.bme.mit.inf.dslreasoner.logic.model/model/logiclanguage.ecore')
-rw-r--r--Framework/hu.bme.mit.inf.dslreasoner.logic.model/model/logiclanguage.ecore203
1 files changed, 203 insertions, 0 deletions
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.logic.model/model/logiclanguage.ecore b/Framework/hu.bme.mit.inf.dslreasoner.logic.model/model/logiclanguage.ecore
new file mode 100644
index 00000000..5d8165a9
--- /dev/null
+++ b/Framework/hu.bme.mit.inf.dslreasoner.logic.model/model/logiclanguage.ecore
@@ -0,0 +1,203 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="logiclanguage" nsURI="http://www.bme.hu/mit/inf/dslreasoner/logic/model/language"
4 nsPrefix="language">
5 <eClassifiers xsi:type="ecore:EClass" name="Type" abstract="true" eSuperTypes="#//TypeDescriptor">
6 <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
7 <eStructuralFeatures xsi:type="ecore:EReference" name="subtypes" upperBound="-1"
8 eType="#//Type" eOpposite="#//Type/supertypes"/>
9 <eStructuralFeatures xsi:type="ecore:EReference" name="supertypes" upperBound="-1"
10 eType="#//Type" eOpposite="#//Type/subtypes"/>
11 <eStructuralFeatures xsi:type="ecore:EAttribute" name="isAbstract" lowerBound="1"
12 eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
13 </eClassifiers>
14 <eClassifiers xsi:type="ecore:EClass" name="DefinedElement" eSuperTypes="#//SymbolicDeclaration">
15 <eStructuralFeatures xsi:type="ecore:EReference" name="definedInType" lowerBound="1"
16 upperBound="-1" eType="#//TypeDefinition" eOpposite="#//TypeDefinition/elements"/>
17 </eClassifiers>
18 <eClassifiers xsi:type="ecore:EClass" name="TypeDefinition" eSuperTypes="#//Type">
19 <eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1"
20 eType="#//DefinedElement" eOpposite="#//DefinedElement/definedInType"/>
21 <eStructuralFeatures xsi:type="ecore:EReference" name="defines" eType="#//TypeDeclaration"/>
22 </eClassifiers>
23 <eClassifiers xsi:type="ecore:EClass" name="TypeReference" abstract="true" eSuperTypes="#//TypeDescriptor"/>
24 <eClassifiers xsi:type="ecore:EClass" name="ComplexTypeReference" eSuperTypes="#//TypeReference">
25 <eStructuralFeatures xsi:type="ecore:EReference" name="referred" eType="#//Type"/>
26 </eClassifiers>
27 <eClassifiers xsi:type="ecore:EClass" name="PrimitiveTypeReference" abstract="true"
28 eSuperTypes="#//TypeReference"/>
29 <eClassifiers xsi:type="ecore:EClass" name="IntTypeReference" eSuperTypes="#//PrimitiveTypeReference"/>
30 <eClassifiers xsi:type="ecore:EClass" name="BoolTypeReference" eSuperTypes="#//PrimitiveTypeReference"/>
31 <eClassifiers xsi:type="ecore:EClass" name="RealTypeReference" eSuperTypes="#//PrimitiveTypeReference"/>
32 <eClassifiers xsi:type="ecore:EClass" name="Function" abstract="true" eSuperTypes="#//SymbolicDeclaration">
33 <eStructuralFeatures xsi:type="ecore:EReference" name="range" lowerBound="1" eType="#//TypeReference"
34 containment="true"/>
35 <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
36 eType="#//TypeReference" containment="true"/>
37 <eStructuralFeatures xsi:type="ecore:EReference" name="annotations" upperBound="-1"
38 eType="ecore:EClass logicproblem.ecore#//FunctionAnnotation" eOpposite="logicproblem.ecore#//FunctionAnnotation/target"/>
39 </eClassifiers>
40 <eClassifiers xsi:type="ecore:EClass" name="Term" abstract="true" eSuperTypes="#//TermDescription"/>
41 <eClassifiers xsi:type="ecore:EClass" name="SymbolicDeclaration" abstract="true"
42 eSuperTypes="#//TermDescription">
43 <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
44 </eClassifiers>
45 <eClassifiers xsi:type="ecore:EClass" name="SymbolicValue" eSuperTypes="#//Term">
46 <eStructuralFeatures xsi:type="ecore:EReference" name="symbolicReference" eType="#//SymbolicDeclaration"/>
47 <eStructuralFeatures xsi:type="ecore:EReference" name="parameterSubstitutions"
48 upperBound="-1" eType="#//Term" containment="true"/>
49 </eClassifiers>
50 <eClassifiers xsi:type="ecore:EClass" name="AtomicTerm" abstract="true" eSuperTypes="#//Term"/>
51 <eClassifiers xsi:type="ecore:EClass" name="IntLiteral" eSuperTypes="#//AtomicTerm">
52 <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
53 </eClassifiers>
54 <eClassifiers xsi:type="ecore:EClass" name="BoolLiteral" eSuperTypes="#//AtomicTerm">
55 <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
56 </eClassifiers>
57 <eClassifiers xsi:type="ecore:EClass" name="RealLiteral" eSuperTypes="#//AtomicTerm">
58 <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBigDecimal"/>
59 </eClassifiers>
60 <eClassifiers xsi:type="ecore:EClass" name="Variable" eSuperTypes="#//SymbolicDeclaration">
61 <eStructuralFeatures xsi:type="ecore:EReference" name="range" lowerBound="1" eType="#//TypeReference"
62 containment="true"/>
63 </eClassifiers>
64 <eClassifiers xsi:type="ecore:EClass" name="QuantifiedExpression" abstract="true"
65 eSuperTypes="#//Term">
66 <eStructuralFeatures xsi:type="ecore:EReference" name="quantifiedVariables" upperBound="-1"
67 eType="#//Variable" containment="true"/>
68 <eStructuralFeatures xsi:type="ecore:EReference" name="expression" eType="#//Term"
69 containment="true"/>
70 </eClassifiers>
71 <eClassifiers xsi:type="ecore:EClass" name="Exists" eSuperTypes="#//QuantifiedExpression"/>
72 <eClassifiers xsi:type="ecore:EClass" name="Forall" eSuperTypes="#//QuantifiedExpression"/>
73 <eClassifiers xsi:type="ecore:EClass" name="BoolOperation" abstract="true" eSuperTypes="#//Term"/>
74 <eClassifiers xsi:type="ecore:EClass" name="And" eSuperTypes="#//BoolOperation">
75 <eStructuralFeatures xsi:type="ecore:EReference" name="operands" upperBound="-1"
76 eType="#//Term" containment="true"/>
77 </eClassifiers>
78 <eClassifiers xsi:type="ecore:EClass" name="Or" eSuperTypes="#//BoolOperation">
79 <eStructuralFeatures xsi:type="ecore:EReference" name="operands" upperBound="-1"
80 eType="#//Term" containment="true"/>
81 </eClassifiers>
82 <eClassifiers xsi:type="ecore:EClass" name="Impl" eSuperTypes="#//BoolOperation">
83 <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="#//Term"
84 containment="true"/>
85 <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="#//Term"
86 containment="true"/>
87 </eClassifiers>
88 <eClassifiers xsi:type="ecore:EClass" name="Not" eSuperTypes="#//BoolOperation">
89 <eStructuralFeatures xsi:type="ecore:EReference" name="operand" eType="#//Term"
90 containment="true"/>
91 </eClassifiers>
92 <eClassifiers xsi:type="ecore:EClass" name="Iff" eSuperTypes="#//BoolOperation">
93 <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="#//Term"
94 containment="true"/>
95 <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="#//Term"
96 containment="true"/>
97 </eClassifiers>
98 <eClassifiers xsi:type="ecore:EClass" name="PrimitiveRelation" abstract="true" eSuperTypes="#//Term"/>
99 <eClassifiers xsi:type="ecore:EClass" name="Equals" eSuperTypes="#//PrimitiveRelation">
100 <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="#//Term"
101 containment="true"/>
102 <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="#//Term"
103 containment="true"/>
104 </eClassifiers>
105 <eClassifiers xsi:type="ecore:EClass" name="Distinct" eSuperTypes="#//PrimitiveRelation">
106 <eStructuralFeatures xsi:type="ecore:EReference" name="operands" upperBound="-1"
107 eType="#//Term" containment="true"/>
108 </eClassifiers>
109 <eClassifiers xsi:type="ecore:EClass" name="LessThan" eSuperTypes="#//PrimitiveRelation">
110 <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="#//Term"
111 containment="true"/>
112 <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="#//Term"
113 containment="true"/>
114 </eClassifiers>
115 <eClassifiers xsi:type="ecore:EClass" name="MoreThan" eSuperTypes="#//PrimitiveRelation">
116 <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="#//Term"
117 containment="true"/>
118 <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="#//Term"
119 containment="true"/>
120 </eClassifiers>
121 <eClassifiers xsi:type="ecore:EClass" name="LessOrEqualThan" eSuperTypes="#//PrimitiveRelation">
122 <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="#//Term"
123 containment="true"/>
124 <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="#//Term"
125 containment="true"/>
126 </eClassifiers>
127 <eClassifiers xsi:type="ecore:EClass" name="MoreOrEqualThan" eSuperTypes="#//PrimitiveRelation">
128 <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="#//Term"
129 containment="true"/>
130 <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="#//Term"
131 containment="true"/>
132 </eClassifiers>
133 <eClassifiers xsi:type="ecore:EClass" name="IntOperation" abstract="true" eSuperTypes="#//Term">
134 <eStructuralFeatures xsi:type="ecore:EReference" name="leftOperand" eType="#//Term"
135 containment="true"/>
136 <eStructuralFeatures xsi:type="ecore:EReference" name="rightOperand" eType="#//Term"
137 containment="true"/>
138 </eClassifiers>
139 <eClassifiers xsi:type="ecore:EClass" name="Plus" eSuperTypes="#//IntOperation"/>
140 <eClassifiers xsi:type="ecore:EClass" name="Minus" eSuperTypes="#//IntOperation"/>
141 <eClassifiers xsi:type="ecore:EClass" name="Multiply" eSuperTypes="#//IntOperation"/>
142 <eClassifiers xsi:type="ecore:EClass" name="Divison" eSuperTypes="#//IntOperation"/>
143 <eClassifiers xsi:type="ecore:EClass" name="Mod" eSuperTypes="#//IntOperation"/>
144 <eClassifiers xsi:type="ecore:EClass" name="TypeDescriptor" abstract="true" interface="true"/>
145 <eClassifiers xsi:type="ecore:EClass" name="TermDescription" abstract="true" interface="true"/>
146 <eClassifiers xsi:type="ecore:EClass" name="Assertion">
147 <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1" eType="#//Term"
148 containment="true"/>
149 <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
150 <eStructuralFeatures xsi:type="ecore:EReference" name="annotations" upperBound="-1"
151 eType="ecore:EClass logicproblem.ecore#//AssertionAnnotation" eOpposite="logicproblem.ecore#//AssertionAnnotation/target"/>
152 </eClassifiers>
153 <eClassifiers xsi:type="ecore:EClass" name="Relation" abstract="true" eSuperTypes="#//SymbolicDeclaration">
154 <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
155 eType="#//TypeReference" containment="true"/>
156 <eStructuralFeatures xsi:type="ecore:EReference" name="annotations" upperBound="-1"
157 eType="ecore:EClass logicproblem.ecore#//RelationAnnotation" eOpposite="logicproblem.ecore#//RelationAnnotation/target"/>
158 </eClassifiers>
159 <eClassifiers xsi:type="ecore:EClass" name="Constant" abstract="true" eSuperTypes="#//SymbolicDeclaration">
160 <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="#//TypeReference"
161 containment="true"/>
162 <eStructuralFeatures xsi:type="ecore:EReference" name="annotations" upperBound="-1"
163 eType="ecore:EClass logicproblem.ecore#//ConstantAnnotation" eOpposite="logicproblem.ecore#//ConstantAnnotation/target"/>
164 </eClassifiers>
165 <eClassifiers xsi:type="ecore:EClass" name="ConstantDefinition" eSuperTypes="#//Constant">
166 <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1" eType="#//Term"
167 containment="true"/>
168 <eStructuralFeatures xsi:type="ecore:EReference" name="defines" eType="#//ConstantDeclaration"/>
169 </eClassifiers>
170 <eClassifiers xsi:type="ecore:EClass" name="RelationDefinition" eSuperTypes="#//Relation">
171 <eStructuralFeatures xsi:type="ecore:EReference" name="variables" upperBound="-1"
172 eType="#//Variable" containment="true"/>
173 <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1" eType="#//Term"
174 containment="true"/>
175 <eStructuralFeatures xsi:type="ecore:EReference" name="defines" eType="#//RelationDeclaration"/>
176 </eClassifiers>
177 <eClassifiers xsi:type="ecore:EClass" name="FunctionDefinition" eSuperTypes="#//Function">
178 <eStructuralFeatures xsi:type="ecore:EReference" name="variable" upperBound="-1"
179 eType="#//Variable" containment="true"/>
180 <eStructuralFeatures xsi:type="ecore:EReference" name="defines" eType="#//FunctionDeclaration"/>
181 <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1" eType="#//Term"
182 containment="true"/>
183 </eClassifiers>
184 <eClassifiers xsi:type="ecore:EClass" name="IfThenElse" eSuperTypes="#//Term">
185 <eStructuralFeatures xsi:type="ecore:EReference" name="condition" lowerBound="1"
186 eType="#//Term" containment="true"/>
187 <eStructuralFeatures xsi:type="ecore:EReference" name="ifTrue" lowerBound="1"
188 eType="#//Term" containment="true"/>
189 <eStructuralFeatures xsi:type="ecore:EReference" name="ifFalse" lowerBound="1"
190 eType="#//Term" containment="true"/>
191 </eClassifiers>
192 <eClassifiers xsi:type="ecore:EClass" name="ConstantDeclaration" eSuperTypes="#//Constant"/>
193 <eClassifiers xsi:type="ecore:EClass" name="RelationDeclaration" eSuperTypes="#//Relation"/>
194 <eClassifiers xsi:type="ecore:EClass" name="FunctionDeclaration" eSuperTypes="#//Function"/>
195 <eClassifiers xsi:type="ecore:EClass" name="TypeDeclaration" eSuperTypes="#//Type"/>
196 <eClassifiers xsi:type="ecore:EClass" name="UnknownBecauseUninterpreted" eSuperTypes="#//Term"/>
197 <eClassifiers xsi:type="ecore:EClass" name="InstanceOf" eSuperTypes="#//Term">
198 <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1" eType="#//Term"
199 containment="true"/>
200 <eStructuralFeatures xsi:type="ecore:EReference" name="range" lowerBound="1" eType="#//TypeReference"
201 containment="true"/>
202 </eClassifiers>
203</ecore:EPackage>