diff options
author | ArenBabikian <aren.babikian@mail.mcgill.ca> | 2019-03-05 13:37:02 -0500 |
---|---|---|
committer | ArenBabikian <aren.babikian@mail.mcgill.ca> | 2019-03-05 13:37:02 -0500 |
commit | df12163128073296c4d811fa67b02e37ceb20179 (patch) | |
tree | 7509fdd478d6ff3d908d0ab5aa39ed9a8260f0b0 /Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner | |
parent | Begin handing of scope and fix type definitions. (diff) | |
download | VIATRA-Generator-df12163128073296c4d811fa67b02e37ceb20179.tar.gz VIATRA-Generator-df12163128073296c4d811fa67b02e37ceb20179.tar.zst VIATRA-Generator-df12163128073296c4d811fa67b02e37ceb20179.zip |
Implement type scope handling
Diffstat (limited to 'Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner')
25 files changed, 167 insertions, 125 deletions
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper.xtend b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper.xtend index e2c15b75..54c44c72 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper.xtend +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper.xtend | |||
@@ -238,7 +238,7 @@ class Logic2VampireLanguageMapper { | |||
238 | def dispatch protected VLSTerm transformTerm(InstanceOf instanceOf, Logic2VampireLanguageMapperTrace trace, | 238 | def dispatch protected VLSTerm transformTerm(InstanceOf instanceOf, Logic2VampireLanguageMapperTrace trace, |
239 | Map<Variable, VLSVariable> variables) { | 239 | Map<Variable, VLSVariable> variables) { |
240 | return createVLSFunction => [ | 240 | return createVLSFunction => [ |
241 | it.constant = support.toIDMultiple("type", (instanceOf.range as ComplexTypeReference).referred.name) | 241 | it.constant = support.toIDMultiple("t", (instanceOf.range as ComplexTypeReference).referred.name) |
242 | it.terms += instanceOf.value.transformTerm(trace, variables) | 242 | it.terms += instanceOf.value.transformTerm(trace, variables) |
243 | ] | 243 | ] |
244 | } | 244 | } |
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_RelationMapper.xtend b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_RelationMapper.xtend index 60653a42..6f3b13ef 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_RelationMapper.xtend +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_RelationMapper.xtend | |||
@@ -39,7 +39,7 @@ class Logic2VampireLanguageMapper_RelationMapper { | |||
39 | relationVar2VLS.put(variable, v) | 39 | relationVar2VLS.put(variable, v) |
40 | 40 | ||
41 | val varTypeComply = createVLSFunction => [ | 41 | val varTypeComply = createVLSFunction => [ |
42 | it.constant = support.toIDMultiple("type", (variable.range as ComplexTypeReference).referred.name) | 42 | it.constant = support.toIDMultiple("t", (variable.range as ComplexTypeReference).referred.name) |
43 | it.terms += createVLSVariable => [ | 43 | it.terms += createVLSVariable => [ |
44 | it.name = support.toIDMultiple("Var", variable.name) | 44 | it.name = support.toIDMultiple("Var", variable.name) |
45 | ] | 45 | ] |
@@ -47,7 +47,7 @@ class Logic2VampireLanguageMapper_RelationMapper { | |||
47 | relationVar2TypeDecComply.put(variable, varTypeComply) | 47 | relationVar2TypeDecComply.put(variable, varTypeComply) |
48 | 48 | ||
49 | val varTypeRes = createVLSFunction => [ | 49 | val varTypeRes = createVLSFunction => [ |
50 | it.constant = support.toIDMultiple("type", (variable.range as ComplexTypeReference).referred.name) | 50 | it.constant = support.toIDMultiple("t", (variable.range as ComplexTypeReference).referred.name) |
51 | it.terms += createVLSVariable => [ | 51 | it.terms += createVLSVariable => [ |
52 | it.name = support.toIDMultiple("Var", variable.name) | 52 | it.name = support.toIDMultiple("Var", variable.name) |
53 | ] | 53 | ] |
@@ -136,7 +136,7 @@ class Logic2VampireLanguageMapper_RelationMapper { | |||
136 | relationVar2VLS.add(v) | 136 | relationVar2VLS.add(v) |
137 | 137 | ||
138 | val varTypeComply = createVLSFunction => [ | 138 | val varTypeComply = createVLSFunction => [ |
139 | it.constant = support.toIDMultiple("type", (r.parameters.get(i) as ComplexTypeReference).referred.name) | 139 | it.constant = support.toIDMultiple("t", (r.parameters.get(i) as ComplexTypeReference).referred.name) |
140 | it.terms += createVLSVariable => [ | 140 | it.terms += createVLSVariable => [ |
141 | it.name = support.toIDMultiple("Var", i.toString) | 141 | it.name = support.toIDMultiple("Var", i.toString) |
142 | ] | 142 | ] |
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ScopeMapper.xtend b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ScopeMapper.xtend index 84aa521d..4b7ea3d0 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ScopeMapper.xtend +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ScopeMapper.xtend | |||
@@ -18,7 +18,6 @@ class Logic2VampireLanguageMapper_ScopeMapper { | |||
18 | def dispatch public void transformScope(LogicSolverConfiguration config, Logic2VampireLanguageMapperTrace trace) { | 18 | def dispatch public void transformScope(LogicSolverConfiguration config, Logic2VampireLanguageMapperTrace trace) { |
19 | val VLSVariable variable = createVLSVariable => [it.name = "A"] | 19 | val VLSVariable variable = createVLSVariable => [it.name = "A"] |
20 | 20 | ||
21 | |||
22 | // 1. make a list of constants equaling the min number of specified objects | 21 | // 1. make a list of constants equaling the min number of specified objects |
23 | val List<VLSConstant> instances = newArrayList | 22 | val List<VLSConstant> instances = newArrayList |
24 | for (var i = 0; i < config.typeScopes.minNewElements; i++) { | 23 | for (var i = 0; i < config.typeScopes.minNewElements; i++) { |
@@ -28,47 +27,37 @@ class Logic2VampireLanguageMapper_ScopeMapper { | |||
28 | ] | 27 | ] |
29 | instances.add(cst) | 28 | instances.add(cst) |
30 | } | 29 | } |
31 | |||
32 | |||
33 | // TODO: specify for the max | ||
34 | |||
35 | 30 | ||
36 | // 2. Create initial fof formula to specify the number of elems | 31 | // TODO: specify for the max |
37 | val cstDec = createVLSFofFormula => [ | 32 | if (config.typeScopes.minNewElements != 0) { |
38 | it.name = "typeScope" | 33 | // 2. Create initial fof formula to specify the number of elems |
39 | it.fofRole = "axiom" | 34 | val cstDec = createVLSFofFormula => [ |
40 | it.fofFormula = createVLSUniversalQuantifier => [ | 35 | it.name = "typeScope" |
41 | it.variables += support.duplicate(variable) | 36 | it.fofRole = "axiom" |
42 | // check below | 37 | it.fofFormula = createVLSUniversalQuantifier => [ |
43 | it.operand = createVLSEquivalent => [ | 38 | it.variables += support.duplicate(variable) |
44 | it.left = support.topLevelTypeFunc | 39 | // check below |
45 | it.right = support.unfoldOr(instances.map [ i | | 40 | it.operand = createVLSEquivalent => [ |
46 | createVLSEquality => [ | 41 | it.left = support.topLevelTypeFunc |
47 | it.left = createVLSVariable => [it.name = variable.name] | 42 | it.right = support.unfoldOr(instances.map [ i | |
48 | it.right = i | 43 | createVLSEquality => [ |
49 | ] | 44 | it.left = createVLSVariable => [it.name = variable.name] |
50 | ]) | 45 | it.right = i |
46 | ] | ||
47 | ]) | ||
48 | ] | ||
51 | ] | 49 | ] |
52 | ] | 50 | ] |
53 | ] | 51 | trace.specification.formulas += cstDec |
54 | trace.specification.formulas += cstDec | 52 | |
55 | 53 | // TODO: specify for scope per type | |
56 | 54 | // 3. Specify uniqueness of elements | |
57 | // TODO: specify for scope per type | 55 | val uniqueness = createVLSFofFormula => [ |
58 | 56 | it.name = "typeUniqueness" | |
59 | 57 | it.fofRole = "axiom" | |
60 | 58 | it.fofFormula = support.establishUniqueness(instances) | |
61 | // 3. Specify uniqueness of elements | 59 | ] |
62 | val uniqueness = createVLSFofFormula => [ | 60 | trace.specification.formulas += uniqueness |
63 | it.name = "typeUniqueness" | 61 | } |
64 | it.fofRole = "axiom" | ||
65 | it.fofFormula = support.unfoldOr(instances.map [ i | | ||
66 | createVLSEquality => [ | ||
67 | it.left = createVLSVariable => [it.name = variable.name] | ||
68 | it.right = i | ||
69 | ] | ||
70 | ]) | ||
71 | ] | ||
72 | trace.specification.formulas += cstDec | ||
73 | } | 62 | } |
74 | } | 63 | } |
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_Support.xtend b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_Support.xtend index e69f0d51..06ec585c 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_Support.xtend +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_Support.xtend | |||
@@ -13,6 +13,8 @@ import java.util.HashMap | |||
13 | import java.util.List | 13 | import java.util.List |
14 | import java.util.Map | 14 | import java.util.Map |
15 | import org.eclipse.emf.common.util.EList | 15 | import org.eclipse.emf.common.util.EList |
16 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSConstant | ||
17 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSInequality | ||
16 | 18 | ||
17 | class Logic2VampireLanguageMapper_Support { | 19 | class Logic2VampireLanguageMapper_Support { |
18 | private val extension VampireLanguageFactory factory = VampireLanguageFactory.eINSTANCE | 20 | private val extension VampireLanguageFactory factory = VampireLanguageFactory.eINSTANCE |
@@ -26,6 +28,7 @@ class Logic2VampireLanguageMapper_Support { | |||
26 | ids.split("\\s+").join("_") | 28 | ids.split("\\s+").join("_") |
27 | } | 29 | } |
28 | 30 | ||
31 | //TODO Make more general | ||
29 | def protected VLSVariable duplicate(VLSVariable vrbl) { | 32 | def protected VLSVariable duplicate(VLSVariable vrbl) { |
30 | return createVLSVariable => [it.name = vrbl.name] | 33 | return createVLSVariable => [it.name = vrbl.name] |
31 | } | 34 | } |
@@ -38,6 +41,25 @@ class Logic2VampireLanguageMapper_Support { | |||
38 | ] | 41 | ] |
39 | ] | 42 | ] |
40 | } | 43 | } |
44 | |||
45 | //TODO Make more general | ||
46 | def establishUniqueness(List<VLSConstant> terms) { | ||
47 | val List<VLSInequality> eqs = newArrayList | ||
48 | for (t1 : terms.subList(1, terms.length)){ | ||
49 | for (t2 : terms.subList(0, terms.indexOf(t1))){ | ||
50 | val eq = createVLSInequality => [ | ||
51 | //TEMP | ||
52 | it.left = createVLSConstant => [it.name = t2.name] | ||
53 | it.right = createVLSConstant => [it.name = t1.name] | ||
54 | //TEMP | ||
55 | ] | ||
56 | eqs.add(eq) | ||
57 | } | ||
58 | } | ||
59 | |||
60 | return unfoldAnd(eqs) | ||
61 | |||
62 | } | ||
41 | 63 | ||
42 | // Support Functions | 64 | // Support Functions |
43 | // booleans | 65 | // booleans |
@@ -111,7 +133,7 @@ class Logic2VampireLanguageMapper_Support { | |||
111 | val typedefs = new ArrayList<VLSTerm> | 133 | val typedefs = new ArrayList<VLSTerm> |
112 | for (variable : expression.quantifiedVariables) { | 134 | for (variable : expression.quantifiedVariables) { |
113 | val eq = createVLSFunction => [ | 135 | val eq = createVLSFunction => [ |
114 | it.constant = toIDMultiple("type", (variable.range as ComplexTypeReference).referred.name) | 136 | it.constant = toIDMultiple("t", (variable.range as ComplexTypeReference).referred.name) |
115 | it.terms += createVLSVariable => [ | 137 | it.terms += createVLSVariable => [ |
116 | it.name = toIDMultiple("Var", variable.name) | 138 | it.name = toIDMultiple("Var", variable.name) |
117 | ] | 139 | ] |
@@ -138,7 +160,7 @@ class Logic2VampireLanguageMapper_Support { | |||
138 | val typedefs = new ArrayList<VLSTerm> | 160 | val typedefs = new ArrayList<VLSTerm> |
139 | for (variable : expression.quantifiedVariables) { | 161 | for (variable : expression.quantifiedVariables) { |
140 | val eq = createVLSFunction => [ | 162 | val eq = createVLSFunction => [ |
141 | it.constant = toIDMultiple("type", (variable.range as ComplexTypeReference).referred.name) | 163 | it.constant = toIDMultiple("t", (variable.range as ComplexTypeReference).referred.name) |
142 | it.terms += createVLSVariable => [ | 164 | it.terms += createVLSVariable => [ |
143 | it.name = toIDMultiple("Var", variable.name) | 165 | it.name = toIDMultiple("Var", variable.name) |
144 | ] | 166 | ] |
@@ -157,5 +179,7 @@ class Logic2VampireLanguageMapper_Support { | |||
157 | def protected withAddition(Map<Variable, VLSVariable> map1, Map<Variable, VLSVariable> map2) { | 179 | def protected withAddition(Map<Variable, VLSVariable> map1, Map<Variable, VLSVariable> map2) { |
158 | new HashMap(map1) => [putAll(map2)] | 180 | new HashMap(map1) => [putAll(map2)] |
159 | } | 181 | } |
182 | |||
183 | |||
160 | 184 | ||
161 | } | 185 | } |
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.xtend b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.xtend index eed10656..88e1e23a 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.xtend +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.xtend | |||
@@ -89,27 +89,25 @@ class Logic2VampireLanguageMapper_TypeMapper_FilteredTypes implements Logic2Vamp | |||
89 | 89 | ||
90 | // 3. For each non-abstract type, create an and sequence containing all typedeclaration predicates | 90 | // 3. For each non-abstract type, create an and sequence containing all typedeclaration predicates |
91 | // and store in a map | 91 | // and store in a map |
92 | // val List<VLSTerm> type2PossibleNot = new ArrayList | 92 | for (t1 : types.filter[!isIsAbstract]) { |
93 | // val List<VLSTerm> type2And = new ArrayList | 93 | for (t2 : types) { |
94 | for (type : types.filter[!isIsAbstract]) { | ||
95 | for (type2 : types) { | ||
96 | // possible improvement: check all supertypes and decide if negated or not based on negations/not negations of supertypes | 94 | // possible improvement: check all supertypes and decide if negated or not based on negations/not negations of supertypes |
97 | if (type == type2 || dfsSupertypeCheck(type, type2)) { | 95 | if (t1 == t2 || dfsSupertypeCheck(t1, t2)) { |
98 | typeTrace.type2PossibleNot.put(type2, createVLSFunction => [ | 96 | typeTrace.type2PossibleNot.put(t2, createVLSFunction => [ |
99 | it.constant = type2.lookup(typeTrace.type2Predicate).constant | 97 | it.constant = t2.lookup(typeTrace.type2Predicate).constant |
100 | it.terms += createVLSVariable => [it.name = "A"] | 98 | it.terms += support.duplicate(variable) |
101 | ]) | 99 | ]) |
102 | } else { | 100 | } else { |
103 | typeTrace.type2PossibleNot.put(type2, createVLSUnaryNegation => [ | 101 | typeTrace.type2PossibleNot.put(t2, createVLSUnaryNegation => [ |
104 | it.operand = createVLSFunction => [ | 102 | it.operand = createVLSFunction => [ |
105 | it.constant = type2.lookup(typeTrace.type2Predicate).constant | 103 | it.constant = t2.lookup(typeTrace.type2Predicate).constant |
106 | it.terms += createVLSVariable => [it.name = "A"] | 104 | it.terms += support.duplicate(variable) |
107 | ] | 105 | ] |
108 | ]) | 106 | ]) |
109 | } | 107 | } |
110 | // typeTrace.type2PossibleNot.put(type2, type2.lookup(typeTrace.type2Predicate)) | 108 | // typeTrace.type2PossibleNot.put(type2, type2.lookup(typeTrace.type2Predicate)) |
111 | } | 109 | } |
112 | typeTrace.type2And.put(type, support.unfoldAnd(new ArrayList<VLSTerm>(typeTrace.type2PossibleNot.values))) | 110 | typeTrace.type2And.put(t1, support.unfoldAnd(new ArrayList<VLSTerm>(typeTrace.type2PossibleNot.values))) |
113 | // typeTrace.type2And.put(type, type.lookup(typeTrace.type2Predicate) ) | 111 | // typeTrace.type2And.put(type, type.lookup(typeTrace.type2Predicate) ) |
114 | typeTrace.type2PossibleNot.clear | 112 | typeTrace.type2PossibleNot.clear |
115 | } | 113 | } |
@@ -123,7 +121,7 @@ class Logic2VampireLanguageMapper_TypeMapper_FilteredTypes implements Logic2Vamp | |||
123 | it.name = "hierarchyHandler" | 121 | it.name = "hierarchyHandler" |
124 | it.fofRole = "axiom" | 122 | it.fofRole = "axiom" |
125 | it.fofFormula = createVLSUniversalQuantifier => [ | 123 | it.fofFormula = createVLSUniversalQuantifier => [ |
126 | it.variables += createVLSVariable => [it.name = "A"] | 124 | it.variables += support.duplicate(variable) |
127 | it.operand = createVLSEquivalent => [ | 125 | it.operand = createVLSEquivalent => [ |
128 | it.left = support.topLevelTypeFunc | 126 | it.left = support.topLevelTypeFunc |
129 | it.right = support.unfoldOr(new ArrayList<VLSTerm>(typeTrace.type2And.values)) | 127 | it.right = support.unfoldOr(new ArrayList<VLSTerm>(typeTrace.type2And.values)) |
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/.VampireAnalyzerConfiguration.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/.VampireAnalyzerConfiguration.xtendbin index 9a2a1b15..4a4eedf5 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/.VampireAnalyzerConfiguration.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/.VampireAnalyzerConfiguration.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/.VampireSolver.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/.VampireSolver.xtendbin index ce05b92c..55f0ac1e 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/.VampireSolver.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/.VampireSolver.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper.xtendbin index 379d0683..e91f89cc 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapperTrace.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapperTrace.xtendbin index 76dd192f..154ff393 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapperTrace.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapperTrace.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_ConstantMapper.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_ConstantMapper.xtendbin index 936ab9ca..5d6ad730 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_ConstantMapper.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_ConstantMapper.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_RelationMapper.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_RelationMapper.xtendbin index e0f442f5..7c787543 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_RelationMapper.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_RelationMapper.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_ScopeMapper.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_ScopeMapper.xtendbin index 493ff288..34f3b285 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_ScopeMapper.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_ScopeMapper.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_Support.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_Support.xtendbin index 13281767..f8d6cd3f 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_Support.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_Support.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_TypeMapper.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_TypeMapper.xtendbin index 1a777880..7b2b11f8 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_TypeMapper.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_TypeMapper.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_TypeMapperTrace_FilteredTypes.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_TypeMapperTrace_FilteredTypes.xtendbin index e8658e7b..7e8336e2 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_TypeMapperTrace_FilteredTypes.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_TypeMapperTrace_FilteredTypes.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.xtendbin index aec1688a..a2229dba 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Logic2VampireLanguageMapper_TypeMapper_FilteredTypes.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Vampire2LogicMapper.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Vampire2LogicMapper.xtendbin index e77b9866..d82649ff 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Vampire2LogicMapper.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.Vampire2LogicMapper.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.VampireHandler.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.VampireHandler.xtendbin index 100a52b8..030a0be9 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.VampireHandler.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.VampireHandler.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.VampireModelInterpretation_TypeInterpretation.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.VampireModelInterpretation_TypeInterpretation.xtendbin index 231c1995..87203ed8 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.VampireModelInterpretation_TypeInterpretation.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.VampireModelInterpretation_TypeInterpretation.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.VampireModelInterpretation_TypeInterpretation_FilteredTypes.xtendbin b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.VampireModelInterpretation_TypeInterpretation_FilteredTypes.xtendbin index b67a307c..65689b0c 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.VampireModelInterpretation_TypeInterpretation_FilteredTypes.xtendbin +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/.VampireModelInterpretation_TypeInterpretation_FilteredTypes.xtendbin | |||
Binary files differ | |||
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper.java b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper.java index 89c9637e..6643576f 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper.java +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper.java | |||
@@ -273,7 +273,7 @@ public class Logic2VampireLanguageMapper { | |||
273 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); | 273 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); |
274 | final Procedure1<VLSFunction> _function = (VLSFunction it) -> { | 274 | final Procedure1<VLSFunction> _function = (VLSFunction it) -> { |
275 | TypeReference _range = instanceOf.getRange(); | 275 | TypeReference _range = instanceOf.getRange(); |
276 | it.setConstant(this.support.toIDMultiple("type", ((ComplexTypeReference) _range).getReferred().getName())); | 276 | it.setConstant(this.support.toIDMultiple("t", ((ComplexTypeReference) _range).getReferred().getName())); |
277 | EList<VLSTerm> _terms = it.getTerms(); | 277 | EList<VLSTerm> _terms = it.getTerms(); |
278 | VLSTerm _transformTerm = this.transformTerm(instanceOf.getValue(), trace, variables); | 278 | VLSTerm _transformTerm = this.transformTerm(instanceOf.getValue(), trace, variables); |
279 | _terms.add(_transformTerm); | 279 | _terms.add(_transformTerm); |
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_RelationMapper.java b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_RelationMapper.java index 561402a7..bce50fcc 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_RelationMapper.java +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_RelationMapper.java | |||
@@ -61,7 +61,7 @@ public class Logic2VampireLanguageMapper_RelationMapper { | |||
61 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); | 61 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); |
62 | final Procedure1<VLSFunction> _function_1 = (VLSFunction it) -> { | 62 | final Procedure1<VLSFunction> _function_1 = (VLSFunction it) -> { |
63 | TypeReference _range = variable.getRange(); | 63 | TypeReference _range = variable.getRange(); |
64 | it.setConstant(this.support.toIDMultiple("type", ((ComplexTypeReference) _range).getReferred().getName())); | 64 | it.setConstant(this.support.toIDMultiple("t", ((ComplexTypeReference) _range).getReferred().getName())); |
65 | EList<VLSTerm> _terms = it.getTerms(); | 65 | EList<VLSTerm> _terms = it.getTerms(); |
66 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); | 66 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); |
67 | final Procedure1<VLSVariable> _function_2 = (VLSVariable it_1) -> { | 67 | final Procedure1<VLSVariable> _function_2 = (VLSVariable it_1) -> { |
@@ -75,7 +75,7 @@ public class Logic2VampireLanguageMapper_RelationMapper { | |||
75 | VLSFunction _createVLSFunction_1 = this.factory.createVLSFunction(); | 75 | VLSFunction _createVLSFunction_1 = this.factory.createVLSFunction(); |
76 | final Procedure1<VLSFunction> _function_2 = (VLSFunction it) -> { | 76 | final Procedure1<VLSFunction> _function_2 = (VLSFunction it) -> { |
77 | TypeReference _range = variable.getRange(); | 77 | TypeReference _range = variable.getRange(); |
78 | it.setConstant(this.support.toIDMultiple("type", ((ComplexTypeReference) _range).getReferred().getName())); | 78 | it.setConstant(this.support.toIDMultiple("t", ((ComplexTypeReference) _range).getReferred().getName())); |
79 | EList<VLSTerm> _terms = it.getTerms(); | 79 | EList<VLSTerm> _terms = it.getTerms(); |
80 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); | 80 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); |
81 | final Procedure1<VLSVariable> _function_3 = (VLSVariable it_1) -> { | 81 | final Procedure1<VLSVariable> _function_3 = (VLSVariable it_1) -> { |
@@ -215,7 +215,7 @@ public class Logic2VampireLanguageMapper_RelationMapper { | |||
215 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); | 215 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); |
216 | final Procedure1<VLSFunction> _function_1 = (VLSFunction it) -> { | 216 | final Procedure1<VLSFunction> _function_1 = (VLSFunction it) -> { |
217 | TypeReference _get = r.getParameters().get((i).intValue()); | 217 | TypeReference _get = r.getParameters().get((i).intValue()); |
218 | it.setConstant(this.support.toIDMultiple("type", ((ComplexTypeReference) _get).getReferred().getName())); | 218 | it.setConstant(this.support.toIDMultiple("t", ((ComplexTypeReference) _get).getReferred().getName())); |
219 | EList<VLSTerm> _terms = it.getTerms(); | 219 | EList<VLSTerm> _terms = it.getTerms(); |
220 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); | 220 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); |
221 | final Procedure1<VLSVariable> _function_2 = (VLSVariable it_1) -> { | 221 | final Procedure1<VLSVariable> _function_2 = (VLSVariable it_1) -> { |
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ScopeMapper.java b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ScopeMapper.java index 86d8b648..8967839d 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ScopeMapper.java +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ScopeMapper.java | |||
@@ -51,42 +51,53 @@ public class Logic2VampireLanguageMapper_ScopeMapper { | |||
51 | instances.add(cst); | 51 | instances.add(cst); |
52 | } | 52 | } |
53 | } | 53 | } |
54 | VLSFofFormula _createVLSFofFormula = this.factory.createVLSFofFormula(); | 54 | if ((config.typeScopes.minNewElements != 0)) { |
55 | final Procedure1<VLSFofFormula> _function_1 = (VLSFofFormula it) -> { | 55 | VLSFofFormula _createVLSFofFormula = this.factory.createVLSFofFormula(); |
56 | it.setName("typeScope"); | 56 | final Procedure1<VLSFofFormula> _function_1 = (VLSFofFormula it) -> { |
57 | it.setFofRole("axiom"); | 57 | it.setName("typeScope"); |
58 | VLSUniversalQuantifier _createVLSUniversalQuantifier = this.factory.createVLSUniversalQuantifier(); | 58 | it.setFofRole("axiom"); |
59 | final Procedure1<VLSUniversalQuantifier> _function_2 = (VLSUniversalQuantifier it_1) -> { | 59 | VLSUniversalQuantifier _createVLSUniversalQuantifier = this.factory.createVLSUniversalQuantifier(); |
60 | EList<VLSVariable> _variables = it_1.getVariables(); | 60 | final Procedure1<VLSUniversalQuantifier> _function_2 = (VLSUniversalQuantifier it_1) -> { |
61 | VLSVariable _duplicate = this.support.duplicate(variable); | 61 | EList<VLSVariable> _variables = it_1.getVariables(); |
62 | _variables.add(_duplicate); | 62 | VLSVariable _duplicate = this.support.duplicate(variable); |
63 | VLSEquivalent _createVLSEquivalent = this.factory.createVLSEquivalent(); | 63 | _variables.add(_duplicate); |
64 | final Procedure1<VLSEquivalent> _function_3 = (VLSEquivalent it_2) -> { | 64 | VLSEquivalent _createVLSEquivalent = this.factory.createVLSEquivalent(); |
65 | it_2.setLeft(this.support.topLevelTypeFunc()); | 65 | final Procedure1<VLSEquivalent> _function_3 = (VLSEquivalent it_2) -> { |
66 | final Function1<VLSConstant, VLSEquality> _function_4 = (VLSConstant i) -> { | 66 | it_2.setLeft(this.support.topLevelTypeFunc()); |
67 | VLSEquality _createVLSEquality = this.factory.createVLSEquality(); | 67 | final Function1<VLSConstant, VLSEquality> _function_4 = (VLSConstant i) -> { |
68 | final Procedure1<VLSEquality> _function_5 = (VLSEquality it_3) -> { | 68 | VLSEquality _createVLSEquality = this.factory.createVLSEquality(); |
69 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); | 69 | final Procedure1<VLSEquality> _function_5 = (VLSEquality it_3) -> { |
70 | final Procedure1<VLSVariable> _function_6 = (VLSVariable it_4) -> { | 70 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); |
71 | it_4.setName(variable.getName()); | 71 | final Procedure1<VLSVariable> _function_6 = (VLSVariable it_4) -> { |
72 | it_4.setName(variable.getName()); | ||
73 | }; | ||
74 | VLSVariable _doubleArrow = ObjectExtensions.<VLSVariable>operator_doubleArrow(_createVLSVariable_1, _function_6); | ||
75 | it_3.setLeft(_doubleArrow); | ||
76 | it_3.setRight(i); | ||
72 | }; | 77 | }; |
73 | VLSVariable _doubleArrow = ObjectExtensions.<VLSVariable>operator_doubleArrow(_createVLSVariable_1, _function_6); | 78 | return ObjectExtensions.<VLSEquality>operator_doubleArrow(_createVLSEquality, _function_5); |
74 | it_3.setLeft(_doubleArrow); | ||
75 | it_3.setRight(i); | ||
76 | }; | 79 | }; |
77 | return ObjectExtensions.<VLSEquality>operator_doubleArrow(_createVLSEquality, _function_5); | 80 | it_2.setRight(this.support.unfoldOr(ListExtensions.<VLSConstant, VLSEquality>map(instances, _function_4))); |
78 | }; | 81 | }; |
79 | it_2.setRight(this.support.unfoldOr(ListExtensions.<VLSConstant, VLSEquality>map(instances, _function_4))); | 82 | VLSEquivalent _doubleArrow = ObjectExtensions.<VLSEquivalent>operator_doubleArrow(_createVLSEquivalent, _function_3); |
83 | it_1.setOperand(_doubleArrow); | ||
80 | }; | 84 | }; |
81 | VLSEquivalent _doubleArrow = ObjectExtensions.<VLSEquivalent>operator_doubleArrow(_createVLSEquivalent, _function_3); | 85 | VLSUniversalQuantifier _doubleArrow = ObjectExtensions.<VLSUniversalQuantifier>operator_doubleArrow(_createVLSUniversalQuantifier, _function_2); |
82 | it_1.setOperand(_doubleArrow); | 86 | it.setFofFormula(_doubleArrow); |
83 | }; | 87 | }; |
84 | VLSUniversalQuantifier _doubleArrow = ObjectExtensions.<VLSUniversalQuantifier>operator_doubleArrow(_createVLSUniversalQuantifier, _function_2); | 88 | final VLSFofFormula cstDec = ObjectExtensions.<VLSFofFormula>operator_doubleArrow(_createVLSFofFormula, _function_1); |
85 | it.setFofFormula(_doubleArrow); | 89 | EList<VLSFofFormula> _formulas = trace.specification.getFormulas(); |
86 | }; | 90 | _formulas.add(cstDec); |
87 | final VLSFofFormula cstDec = ObjectExtensions.<VLSFofFormula>operator_doubleArrow(_createVLSFofFormula, _function_1); | 91 | VLSFofFormula _createVLSFofFormula_1 = this.factory.createVLSFofFormula(); |
88 | EList<VLSFofFormula> _formulas = trace.specification.getFormulas(); | 92 | final Procedure1<VLSFofFormula> _function_2 = (VLSFofFormula it) -> { |
89 | _formulas.add(cstDec); | 93 | it.setName("typeUniqueness"); |
94 | it.setFofRole("axiom"); | ||
95 | it.setFofFormula(this.support.establishUniqueness(instances)); | ||
96 | }; | ||
97 | final VLSFofFormula uniqueness = ObjectExtensions.<VLSFofFormula>operator_doubleArrow(_createVLSFofFormula_1, _function_2); | ||
98 | EList<VLSFofFormula> _formulas_1 = trace.specification.getFormulas(); | ||
99 | _formulas_1.add(uniqueness); | ||
100 | } | ||
90 | } | 101 | } |
91 | 102 | ||
92 | public void transformScope(final LogicSolverConfiguration config, final Logic2VampireLanguageMapperTrace trace) { | 103 | public void transformScope(final LogicSolverConfiguration config, final Logic2VampireLanguageMapperTrace trace) { |
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_Support.java b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_Support.java index b111732f..dfe624be 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_Support.java +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_Support.java | |||
@@ -3,6 +3,7 @@ package ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder; | |||
3 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder.Logic2VampireLanguageMapper; | 3 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder.Logic2VampireLanguageMapper; |
4 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder.Logic2VampireLanguageMapperTrace; | 4 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder.Logic2VampireLanguageMapperTrace; |
5 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSAnd; | 5 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSAnd; |
6 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSConstant; | ||
6 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSExistentialQuantifier; | 7 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSExistentialQuantifier; |
7 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSFunction; | 8 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSFunction; |
8 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSImplies; | 9 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSImplies; |
@@ -25,6 +26,7 @@ import java.util.List; | |||
25 | import java.util.Map; | 26 | import java.util.Map; |
26 | import org.eclipse.emf.common.util.EList; | 27 | import org.eclipse.emf.common.util.EList; |
27 | import org.eclipse.xtend2.lib.StringConcatenation; | 28 | import org.eclipse.xtend2.lib.StringConcatenation; |
29 | import org.eclipse.xtext.xbase.lib.CollectionLiterals; | ||
28 | import org.eclipse.xtext.xbase.lib.Conversions; | 30 | import org.eclipse.xtext.xbase.lib.Conversions; |
29 | import org.eclipse.xtext.xbase.lib.ExclusiveRange; | 31 | import org.eclipse.xtext.xbase.lib.ExclusiveRange; |
30 | import org.eclipse.xtext.xbase.lib.Extension; | 32 | import org.eclipse.xtext.xbase.lib.Extension; |
@@ -73,6 +75,36 @@ public class Logic2VampireLanguageMapper_Support { | |||
73 | return ObjectExtensions.<VLSFunction>operator_doubleArrow(_createVLSFunction, _function); | 75 | return ObjectExtensions.<VLSFunction>operator_doubleArrow(_createVLSFunction, _function); |
74 | } | 76 | } |
75 | 77 | ||
78 | public VLSTerm establishUniqueness(final List<VLSConstant> terms) { | ||
79 | final List<VLSInequality> eqs = CollectionLiterals.<VLSInequality>newArrayList(); | ||
80 | List<VLSConstant> _subList = terms.subList(1, ((Object[])Conversions.unwrapArray(terms, Object.class)).length); | ||
81 | for (final VLSConstant t1 : _subList) { | ||
82 | List<VLSConstant> _subList_1 = terms.subList(0, terms.indexOf(t1)); | ||
83 | for (final VLSConstant t2 : _subList_1) { | ||
84 | { | ||
85 | VLSInequality _createVLSInequality = this.factory.createVLSInequality(); | ||
86 | final Procedure1<VLSInequality> _function = (VLSInequality it) -> { | ||
87 | VLSConstant _createVLSConstant = this.factory.createVLSConstant(); | ||
88 | final Procedure1<VLSConstant> _function_1 = (VLSConstant it_1) -> { | ||
89 | it_1.setName(t2.getName()); | ||
90 | }; | ||
91 | VLSConstant _doubleArrow = ObjectExtensions.<VLSConstant>operator_doubleArrow(_createVLSConstant, _function_1); | ||
92 | it.setLeft(_doubleArrow); | ||
93 | VLSConstant _createVLSConstant_1 = this.factory.createVLSConstant(); | ||
94 | final Procedure1<VLSConstant> _function_2 = (VLSConstant it_1) -> { | ||
95 | it_1.setName(t1.getName()); | ||
96 | }; | ||
97 | VLSConstant _doubleArrow_1 = ObjectExtensions.<VLSConstant>operator_doubleArrow(_createVLSConstant_1, _function_2); | ||
98 | it.setRight(_doubleArrow_1); | ||
99 | }; | ||
100 | final VLSInequality eq = ObjectExtensions.<VLSInequality>operator_doubleArrow(_createVLSInequality, _function); | ||
101 | eqs.add(eq); | ||
102 | } | ||
103 | } | ||
104 | } | ||
105 | return this.unfoldAnd(eqs); | ||
106 | } | ||
107 | |||
76 | protected VLSTerm unfoldAnd(final List<? extends VLSTerm> operands) { | 108 | protected VLSTerm unfoldAnd(final List<? extends VLSTerm> operands) { |
77 | int _size = operands.size(); | 109 | int _size = operands.size(); |
78 | boolean _equals = (_size == 1); | 110 | boolean _equals = (_size == 1); |
@@ -180,7 +212,7 @@ public class Logic2VampireLanguageMapper_Support { | |||
180 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); | 212 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); |
181 | final Procedure1<VLSFunction> _function_1 = (VLSFunction it) -> { | 213 | final Procedure1<VLSFunction> _function_1 = (VLSFunction it) -> { |
182 | TypeReference _range = variable.getRange(); | 214 | TypeReference _range = variable.getRange(); |
183 | it.setConstant(this.toIDMultiple("type", ((ComplexTypeReference) _range).getReferred().getName())); | 215 | it.setConstant(this.toIDMultiple("t", ((ComplexTypeReference) _range).getReferred().getName())); |
184 | EList<VLSTerm> _terms = it.getTerms(); | 216 | EList<VLSTerm> _terms = it.getTerms(); |
185 | VLSVariable _createVLSVariable = this.factory.createVLSVariable(); | 217 | VLSVariable _createVLSVariable = this.factory.createVLSVariable(); |
186 | final Procedure1<VLSVariable> _function_2 = (VLSVariable it_1) -> { | 218 | final Procedure1<VLSVariable> _function_2 = (VLSVariable it_1) -> { |
@@ -229,7 +261,7 @@ public class Logic2VampireLanguageMapper_Support { | |||
229 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); | 261 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); |
230 | final Procedure1<VLSFunction> _function_1 = (VLSFunction it) -> { | 262 | final Procedure1<VLSFunction> _function_1 = (VLSFunction it) -> { |
231 | TypeReference _range = variable.getRange(); | 263 | TypeReference _range = variable.getRange(); |
232 | it.setConstant(this.toIDMultiple("type", ((ComplexTypeReference) _range).getReferred().getName())); | 264 | it.setConstant(this.toIDMultiple("t", ((ComplexTypeReference) _range).getReferred().getName())); |
233 | EList<VLSTerm> _terms = it.getTerms(); | 265 | EList<VLSTerm> _terms = it.getTerms(); |
234 | VLSVariable _createVLSVariable = this.factory.createVLSVariable(); | 266 | VLSVariable _createVLSVariable = this.factory.createVLSVariable(); |
235 | final Procedure1<VLSVariable> _function_2 = (VLSVariable it_1) -> { | 267 | final Procedure1<VLSVariable> _function_2 = (VLSVariable it_1) -> { |
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 71e98871..1e845d94 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 | |||
@@ -115,47 +115,39 @@ public class Logic2VampireLanguageMapper_TypeMapper_FilteredTypes implements Log | |||
115 | return Boolean.valueOf((!_isIsAbstract)); | 115 | return Boolean.valueOf((!_isIsAbstract)); |
116 | }; | 116 | }; |
117 | Iterable<Type> _filter_1 = IterableExtensions.<Type>filter(types, _function_1); | 117 | Iterable<Type> _filter_1 = IterableExtensions.<Type>filter(types, _function_1); |
118 | for (final Type type_2 : _filter_1) { | 118 | for (final Type t1 : _filter_1) { |
119 | { | 119 | { |
120 | for (final Type type2 : types) { | 120 | for (final Type t2 : types) { |
121 | if ((Objects.equal(type_2, type2) || this.dfsSupertypeCheck(type_2, type2))) { | 121 | if ((Objects.equal(t1, t2) || this.dfsSupertypeCheck(t1, t2))) { |
122 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); | 122 | VLSFunction _createVLSFunction = this.factory.createVLSFunction(); |
123 | final Procedure1<VLSFunction> _function_2 = (VLSFunction it) -> { | 123 | final Procedure1<VLSFunction> _function_2 = (VLSFunction it) -> { |
124 | it.setConstant(CollectionsUtil.<Type, VLSFunction>lookup(type2, typeTrace.type2Predicate).getConstant()); | 124 | it.setConstant(CollectionsUtil.<Type, VLSFunction>lookup(t2, typeTrace.type2Predicate).getConstant()); |
125 | EList<VLSTerm> _terms = it.getTerms(); | 125 | EList<VLSTerm> _terms = it.getTerms(); |
126 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); | 126 | VLSVariable _duplicate = this.support.duplicate(variable); |
127 | final Procedure1<VLSVariable> _function_3 = (VLSVariable it_1) -> { | 127 | _terms.add(_duplicate); |
128 | it_1.setName("A"); | ||
129 | }; | ||
130 | VLSVariable _doubleArrow = ObjectExtensions.<VLSVariable>operator_doubleArrow(_createVLSVariable_1, _function_3); | ||
131 | _terms.add(_doubleArrow); | ||
132 | }; | 128 | }; |
133 | VLSFunction _doubleArrow = ObjectExtensions.<VLSFunction>operator_doubleArrow(_createVLSFunction, _function_2); | 129 | VLSFunction _doubleArrow = ObjectExtensions.<VLSFunction>operator_doubleArrow(_createVLSFunction, _function_2); |
134 | typeTrace.type2PossibleNot.put(type2, _doubleArrow); | 130 | typeTrace.type2PossibleNot.put(t2, _doubleArrow); |
135 | } else { | 131 | } else { |
136 | VLSUnaryNegation _createVLSUnaryNegation = this.factory.createVLSUnaryNegation(); | 132 | VLSUnaryNegation _createVLSUnaryNegation = this.factory.createVLSUnaryNegation(); |
137 | final Procedure1<VLSUnaryNegation> _function_3 = (VLSUnaryNegation it) -> { | 133 | final Procedure1<VLSUnaryNegation> _function_3 = (VLSUnaryNegation it) -> { |
138 | VLSFunction _createVLSFunction_1 = this.factory.createVLSFunction(); | 134 | VLSFunction _createVLSFunction_1 = this.factory.createVLSFunction(); |
139 | final Procedure1<VLSFunction> _function_4 = (VLSFunction it_1) -> { | 135 | final Procedure1<VLSFunction> _function_4 = (VLSFunction it_1) -> { |
140 | it_1.setConstant(CollectionsUtil.<Type, VLSFunction>lookup(type2, typeTrace.type2Predicate).getConstant()); | 136 | it_1.setConstant(CollectionsUtil.<Type, VLSFunction>lookup(t2, typeTrace.type2Predicate).getConstant()); |
141 | EList<VLSTerm> _terms = it_1.getTerms(); | 137 | EList<VLSTerm> _terms = it_1.getTerms(); |
142 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); | 138 | VLSVariable _duplicate = this.support.duplicate(variable); |
143 | final Procedure1<VLSVariable> _function_5 = (VLSVariable it_2) -> { | 139 | _terms.add(_duplicate); |
144 | it_2.setName("A"); | ||
145 | }; | ||
146 | VLSVariable _doubleArrow_1 = ObjectExtensions.<VLSVariable>operator_doubleArrow(_createVLSVariable_1, _function_5); | ||
147 | _terms.add(_doubleArrow_1); | ||
148 | }; | 140 | }; |
149 | VLSFunction _doubleArrow_1 = ObjectExtensions.<VLSFunction>operator_doubleArrow(_createVLSFunction_1, _function_4); | 141 | VLSFunction _doubleArrow_1 = ObjectExtensions.<VLSFunction>operator_doubleArrow(_createVLSFunction_1, _function_4); |
150 | it.setOperand(_doubleArrow_1); | 142 | it.setOperand(_doubleArrow_1); |
151 | }; | 143 | }; |
152 | VLSUnaryNegation _doubleArrow_1 = ObjectExtensions.<VLSUnaryNegation>operator_doubleArrow(_createVLSUnaryNegation, _function_3); | 144 | VLSUnaryNegation _doubleArrow_1 = ObjectExtensions.<VLSUnaryNegation>operator_doubleArrow(_createVLSUnaryNegation, _function_3); |
153 | typeTrace.type2PossibleNot.put(type2, _doubleArrow_1); | 145 | typeTrace.type2PossibleNot.put(t2, _doubleArrow_1); |
154 | } | 146 | } |
155 | } | 147 | } |
156 | Collection<VLSTerm> _values = typeTrace.type2PossibleNot.values(); | 148 | Collection<VLSTerm> _values = typeTrace.type2PossibleNot.values(); |
157 | ArrayList<VLSTerm> _arrayList = new ArrayList<VLSTerm>(_values); | 149 | ArrayList<VLSTerm> _arrayList = new ArrayList<VLSTerm>(_values); |
158 | typeTrace.type2And.put(type_2, this.support.unfoldAnd(_arrayList)); | 150 | typeTrace.type2And.put(t1, this.support.unfoldAnd(_arrayList)); |
159 | typeTrace.type2PossibleNot.clear(); | 151 | typeTrace.type2PossibleNot.clear(); |
160 | } | 152 | } |
161 | } | 153 | } |
@@ -166,21 +158,17 @@ public class Logic2VampireLanguageMapper_TypeMapper_FilteredTypes implements Log | |||
166 | VLSUniversalQuantifier _createVLSUniversalQuantifier = this.factory.createVLSUniversalQuantifier(); | 158 | VLSUniversalQuantifier _createVLSUniversalQuantifier = this.factory.createVLSUniversalQuantifier(); |
167 | final Procedure1<VLSUniversalQuantifier> _function_3 = (VLSUniversalQuantifier it_1) -> { | 159 | final Procedure1<VLSUniversalQuantifier> _function_3 = (VLSUniversalQuantifier it_1) -> { |
168 | EList<VLSVariable> _variables = it_1.getVariables(); | 160 | EList<VLSVariable> _variables = it_1.getVariables(); |
169 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); | 161 | VLSVariable _duplicate = this.support.duplicate(variable); |
170 | final Procedure1<VLSVariable> _function_4 = (VLSVariable it_2) -> { | 162 | _variables.add(_duplicate); |
171 | it_2.setName("A"); | ||
172 | }; | ||
173 | VLSVariable _doubleArrow = ObjectExtensions.<VLSVariable>operator_doubleArrow(_createVLSVariable_1, _function_4); | ||
174 | _variables.add(_doubleArrow); | ||
175 | VLSEquivalent _createVLSEquivalent = this.factory.createVLSEquivalent(); | 163 | VLSEquivalent _createVLSEquivalent = this.factory.createVLSEquivalent(); |
176 | final Procedure1<VLSEquivalent> _function_5 = (VLSEquivalent it_2) -> { | 164 | final Procedure1<VLSEquivalent> _function_4 = (VLSEquivalent it_2) -> { |
177 | it_2.setLeft(this.support.topLevelTypeFunc()); | 165 | it_2.setLeft(this.support.topLevelTypeFunc()); |
178 | Collection<VLSTerm> _values = typeTrace.type2And.values(); | 166 | Collection<VLSTerm> _values = typeTrace.type2And.values(); |
179 | ArrayList<VLSTerm> _arrayList = new ArrayList<VLSTerm>(_values); | 167 | ArrayList<VLSTerm> _arrayList = new ArrayList<VLSTerm>(_values); |
180 | it_2.setRight(this.support.unfoldOr(_arrayList)); | 168 | it_2.setRight(this.support.unfoldOr(_arrayList)); |
181 | }; | 169 | }; |
182 | VLSEquivalent _doubleArrow_1 = ObjectExtensions.<VLSEquivalent>operator_doubleArrow(_createVLSEquivalent, _function_5); | 170 | VLSEquivalent _doubleArrow = ObjectExtensions.<VLSEquivalent>operator_doubleArrow(_createVLSEquivalent, _function_4); |
183 | it_1.setOperand(_doubleArrow_1); | 171 | it_1.setOperand(_doubleArrow); |
184 | }; | 172 | }; |
185 | VLSUniversalQuantifier _doubleArrow = ObjectExtensions.<VLSUniversalQuantifier>operator_doubleArrow(_createVLSUniversalQuantifier, _function_3); | 173 | VLSUniversalQuantifier _doubleArrow = ObjectExtensions.<VLSUniversalQuantifier>operator_doubleArrow(_createVLSUniversalQuantifier, _function_3); |
186 | it.setFofFormula(_doubleArrow); | 174 | it.setFofFormula(_doubleArrow); |