diff options
Diffstat (limited to 'Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.java')
-rw-r--r-- | Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.java | 95 |
1 files changed, 28 insertions, 67 deletions
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.java b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.java index 0f5e4e7a..71e98871 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.java +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.java | |||
@@ -7,7 +7,6 @@ import ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder.Logic2VampireLanguage | |||
7 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder.Logic2VampireLanguageMapper_TypeMapperTrace_FilteredTypes; | 7 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder.Logic2VampireLanguageMapper_TypeMapperTrace_FilteredTypes; |
8 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder.VampireModelInterpretation_TypeInterpretation; | 8 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder.VampireModelInterpretation_TypeInterpretation; |
9 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSDoubleQuote; | 9 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSDoubleQuote; |
10 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSEquality; | ||
11 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSEquivalent; | 10 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSEquivalent; |
12 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSFofFormula; | 11 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSFofFormula; |
13 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSFunction; | 12 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSFunction; |
@@ -27,10 +26,10 @@ import java.util.ArrayList; | |||
27 | import java.util.Collection; | 26 | import java.util.Collection; |
28 | import java.util.List; | 27 | import java.util.List; |
29 | import org.eclipse.emf.common.util.EList; | 28 | import org.eclipse.emf.common.util.EList; |
29 | import org.eclipse.xtext.xbase.lib.CollectionLiterals; | ||
30 | import org.eclipse.xtext.xbase.lib.Extension; | 30 | import org.eclipse.xtext.xbase.lib.Extension; |
31 | import org.eclipse.xtext.xbase.lib.Functions.Function1; | 31 | import org.eclipse.xtext.xbase.lib.Functions.Function1; |
32 | import org.eclipse.xtext.xbase.lib.IterableExtensions; | 32 | import org.eclipse.xtext.xbase.lib.IterableExtensions; |
33 | import org.eclipse.xtext.xbase.lib.ListExtensions; | ||
34 | import org.eclipse.xtext.xbase.lib.ObjectExtensions; | 33 | import org.eclipse.xtext.xbase.lib.ObjectExtensions; |
35 | import org.eclipse.xtext.xbase.lib.Procedures.Procedure1; | 34 | import org.eclipse.xtext.xbase.lib.Procedures.Procedure1; |
36 | 35 | ||
@@ -58,14 +57,10 @@ public class Logic2VampireLanguageMapper_TypeMapper_FilteredTypes implements Log | |||
58 | { | 57 | { |
59 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); | 58 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); |
60 | final Procedure1<VLSFunction> _function_1 = (VLSFunction it) -> { | 59 | final Procedure1<VLSFunction> _function_1 = (VLSFunction it) -> { |
61 | it.setConstant(this.support.toIDMultiple("type", type.getName())); | 60 | it.setConstant(this.support.toIDMultiple("t", type.getName())); |
62 | EList<VLSTerm> _terms = it.getTerms(); | 61 | EList<VLSTerm> _terms = it.getTerms(); |
63 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); | 62 | VLSVariable _duplicate = this.support.duplicate(variable); |
64 | final Procedure1<VLSVariable> _function_2 = (VLSVariable it_1) -> { | 63 | _terms.add(_duplicate); |
65 | it_1.setName(variable.getName()); | ||
66 | }; | ||
67 | VLSVariable _doubleArrow = ObjectExtensions.<VLSVariable>operator_doubleArrow(_createVLSVariable_1, _function_2); | ||
68 | _terms.add(_doubleArrow); | ||
69 | }; | 64 | }; |
70 | final VLSFunction typePred = ObjectExtensions.<VLSFunction>operator_doubleArrow(_createVLSFunction, _function_1); | 65 | final VLSFunction typePred = ObjectExtensions.<VLSFunction>operator_doubleArrow(_createVLSFunction, _function_1); |
71 | typeTrace.type2Predicate.put(type, typePred); | 66 | typeTrace.type2Predicate.put(type, typePred); |
@@ -74,6 +69,22 @@ public class Logic2VampireLanguageMapper_TypeMapper_FilteredTypes implements Log | |||
74 | Iterable<TypeDefinition> _filter = Iterables.<TypeDefinition>filter(types, TypeDefinition.class); | 69 | Iterable<TypeDefinition> _filter = Iterables.<TypeDefinition>filter(types, TypeDefinition.class); |
75 | for (final TypeDefinition type_1 : _filter) { | 70 | for (final TypeDefinition type_1 : _filter) { |
76 | { | 71 | { |
72 | final List<VLSFunction> orElems = CollectionLiterals.<VLSFunction>newArrayList(); | ||
73 | EList<DefinedElement> _elements = type_1.getElements(); | ||
74 | for (final DefinedElement e : _elements) { | ||
75 | { | ||
76 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); | ||
77 | final Procedure1<VLSFunction> _function_1 = (VLSFunction it) -> { | ||
78 | it.setConstant(this.support.toIDMultiple("e", e.getName(), type_1.getName())); | ||
79 | EList<VLSTerm> _terms = it.getTerms(); | ||
80 | VLSVariable _duplicate = this.support.duplicate(variable); | ||
81 | _terms.add(_duplicate); | ||
82 | }; | ||
83 | final VLSFunction enumElemPred = ObjectExtensions.<VLSFunction>operator_doubleArrow(_createVLSFunction, _function_1); | ||
84 | typeTrace.element2Predicate.put(e, enumElemPred); | ||
85 | orElems.add(enumElemPred); | ||
86 | } | ||
87 | } | ||
77 | VLSFofFormula _createVLSFofFormula = this.factory.createVLSFofFormula(); | 88 | VLSFofFormula _createVLSFofFormula = this.factory.createVLSFofFormula(); |
78 | final Procedure1<VLSFofFormula> _function_1 = (VLSFofFormula it) -> { | 89 | final Procedure1<VLSFofFormula> _function_1 = (VLSFofFormula it) -> { |
79 | it.setName(this.support.toIDMultiple("typeDef", type_1.getName())); | 90 | it.setName(this.support.toIDMultiple("typeDef", type_1.getName())); |
@@ -81,53 +92,15 @@ public class Logic2VampireLanguageMapper_TypeMapper_FilteredTypes implements Log | |||
81 | VLSUniversalQuantifier _createVLSUniversalQuantifier = this.factory.createVLSUniversalQuantifier(); | 92 | VLSUniversalQuantifier _createVLSUniversalQuantifier = this.factory.createVLSUniversalQuantifier(); |
82 | final Procedure1<VLSUniversalQuantifier> _function_2 = (VLSUniversalQuantifier it_1) -> { | 93 | final Procedure1<VLSUniversalQuantifier> _function_2 = (VLSUniversalQuantifier it_1) -> { |
83 | EList<VLSVariable> _variables = it_1.getVariables(); | 94 | EList<VLSVariable> _variables = it_1.getVariables(); |
84 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); | 95 | VLSVariable _duplicate = this.support.duplicate(variable); |
85 | final Procedure1<VLSVariable> _function_3 = (VLSVariable it_2) -> { | 96 | _variables.add(_duplicate); |
86 | it_2.setName(variable.getName()); | ||
87 | }; | ||
88 | VLSVariable _doubleArrow = ObjectExtensions.<VLSVariable>operator_doubleArrow(_createVLSVariable_1, _function_3); | ||
89 | _variables.add(_doubleArrow); | ||
90 | VLSEquivalent _createVLSEquivalent = this.factory.createVLSEquivalent(); | 97 | VLSEquivalent _createVLSEquivalent = this.factory.createVLSEquivalent(); |
91 | final Procedure1<VLSEquivalent> _function_4 = (VLSEquivalent it_2) -> { | 98 | final Procedure1<VLSEquivalent> _function_3 = (VLSEquivalent it_2) -> { |
92 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); | 99 | it_2.setLeft(CollectionsUtil.<TypeDefinition, VLSFunction>lookup(type_1, typeTrace.type2Predicate)); |
93 | final Procedure1<VLSFunction> _function_5 = (VLSFunction it_3) -> { | 100 | it_2.setRight(this.support.unfoldOr(orElems)); |
94 | it_3.setConstant(CollectionsUtil.<TypeDefinition, VLSFunction>lookup(type_1, typeTrace.type2Predicate).getConstant()); | ||
95 | EList<VLSTerm> _terms = it_3.getTerms(); | ||
96 | VLSVariable _createVLSVariable_2 = this.factory.createVLSVariable(); | ||
97 | final Procedure1<VLSVariable> _function_6 = (VLSVariable it_4) -> { | ||
98 | it_4.setName("A"); | ||
99 | }; | ||
100 | VLSVariable _doubleArrow_1 = ObjectExtensions.<VLSVariable>operator_doubleArrow(_createVLSVariable_2, _function_6); | ||
101 | _terms.add(_doubleArrow_1); | ||
102 | }; | ||
103 | VLSFunction _doubleArrow_1 = ObjectExtensions.<VLSFunction>operator_doubleArrow(_createVLSFunction, _function_5); | ||
104 | it_2.setLeft(_doubleArrow_1); | ||
105 | CollectionsUtil.<TypeDefinition, VLSFunction>lookup(type_1, typeTrace.type2Predicate); | ||
106 | final Function1<DefinedElement, VLSEquality> _function_6 = (DefinedElement e) -> { | ||
107 | VLSEquality _createVLSEquality = this.factory.createVLSEquality(); | ||
108 | final Procedure1<VLSEquality> _function_7 = (VLSEquality it_3) -> { | ||
109 | VLSVariable _createVLSVariable_2 = this.factory.createVLSVariable(); | ||
110 | final Procedure1<VLSVariable> _function_8 = (VLSVariable it_4) -> { | ||
111 | it_4.setName(variable.getName()); | ||
112 | }; | ||
113 | VLSVariable _doubleArrow_2 = ObjectExtensions.<VLSVariable>operator_doubleArrow(_createVLSVariable_2, _function_8); | ||
114 | it_3.setLeft(_doubleArrow_2); | ||
115 | VLSDoubleQuote _createVLSDoubleQuote = this.factory.createVLSDoubleQuote(); | ||
116 | final Procedure1<VLSDoubleQuote> _function_9 = (VLSDoubleQuote it_4) -> { | ||
117 | String _name = e.getName(); | ||
118 | String _plus = ("\"a" + _name); | ||
119 | String _plus_1 = (_plus + "\""); | ||
120 | it_4.setValue(_plus_1); | ||
121 | }; | ||
122 | VLSDoubleQuote _doubleArrow_3 = ObjectExtensions.<VLSDoubleQuote>operator_doubleArrow(_createVLSDoubleQuote, _function_9); | ||
123 | it_3.setRight(_doubleArrow_3); | ||
124 | }; | ||
125 | return ObjectExtensions.<VLSEquality>operator_doubleArrow(_createVLSEquality, _function_7); | ||
126 | }; | ||
127 | it_2.setRight(this.support.unfoldOr(ListExtensions.<DefinedElement, VLSEquality>map(type_1.getElements(), _function_6))); | ||
128 | }; | 101 | }; |
129 | VLSEquivalent _doubleArrow_1 = ObjectExtensions.<VLSEquivalent>operator_doubleArrow(_createVLSEquivalent, _function_4); | 102 | VLSEquivalent _doubleArrow = ObjectExtensions.<VLSEquivalent>operator_doubleArrow(_createVLSEquivalent, _function_3); |
130 | it_1.setOperand(_doubleArrow_1); | 103 | it_1.setOperand(_doubleArrow); |
131 | }; | 104 | }; |
132 | VLSUniversalQuantifier _doubleArrow = ObjectExtensions.<VLSUniversalQuantifier>operator_doubleArrow(_createVLSUniversalQuantifier, _function_2); | 105 | VLSUniversalQuantifier _doubleArrow = ObjectExtensions.<VLSUniversalQuantifier>operator_doubleArrow(_createVLSUniversalQuantifier, _function_2); |
133 | it.setFofFormula(_doubleArrow); | 106 | it.setFofFormula(_doubleArrow); |
@@ -201,19 +174,7 @@ public class Logic2VampireLanguageMapper_TypeMapper_FilteredTypes implements Log | |||
201 | _variables.add(_doubleArrow); | 174 | _variables.add(_doubleArrow); |
202 | VLSEquivalent _createVLSEquivalent = this.factory.createVLSEquivalent(); | 175 | VLSEquivalent _createVLSEquivalent = this.factory.createVLSEquivalent(); |
203 | final Procedure1<VLSEquivalent> _function_5 = (VLSEquivalent it_2) -> { | 176 | final Procedure1<VLSEquivalent> _function_5 = (VLSEquivalent it_2) -> { |
204 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); | 177 | it_2.setLeft(this.support.topLevelTypeFunc()); |
205 | final Procedure1<VLSFunction> _function_6 = (VLSFunction it_3) -> { | ||
206 | it_3.setConstant("object"); | ||
207 | EList<VLSTerm> _terms = it_3.getTerms(); | ||
208 | VLSVariable _createVLSVariable_2 = this.factory.createVLSVariable(); | ||
209 | final Procedure1<VLSVariable> _function_7 = (VLSVariable it_4) -> { | ||
210 | it_4.setName("A"); | ||
211 | }; | ||
212 | VLSVariable _doubleArrow_1 = ObjectExtensions.<VLSVariable>operator_doubleArrow(_createVLSVariable_2, _function_7); | ||
213 | _terms.add(_doubleArrow_1); | ||
214 | }; | ||
215 | VLSFunction _doubleArrow_1 = ObjectExtensions.<VLSFunction>operator_doubleArrow(_createVLSFunction, _function_6); | ||
216 | it_2.setLeft(_doubleArrow_1); | ||
217 | Collection<VLSTerm> _values = typeTrace.type2And.values(); | 178 | Collection<VLSTerm> _values = typeTrace.type2And.values(); |
218 | ArrayList<VLSTerm> _arrayList = new ArrayList<VLSTerm>(_values); | 179 | ArrayList<VLSTerm> _arrayList = new ArrayList<VLSTerm>(_values); |
219 | it_2.setRight(this.support.unfoldOr(_arrayList)); | 180 | it_2.setRight(this.support.unfoldOr(_arrayList)); |