diff options
Diffstat (limited to 'Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ScopeMapper.java')
-rw-r--r-- | Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ScopeMapper.java | 96 |
1 files changed, 96 insertions, 0 deletions
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 new file mode 100644 index 00000000..86d8b648 --- /dev/null +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ScopeMapper.java | |||
@@ -0,0 +1,96 @@ | |||
1 | package ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder; | ||
2 | |||
3 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder.Logic2VampireLanguageMapper; | ||
4 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder.Logic2VampireLanguageMapperTrace; | ||
5 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.builder.Logic2VampireLanguageMapper_Support; | ||
6 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSConstant; | ||
7 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSEquality; | ||
8 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSEquivalent; | ||
9 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSFofFormula; | ||
10 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSUniversalQuantifier; | ||
11 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VLSVariable; | ||
12 | import ca.mcgill.ecse.dslreasoner.vampireLanguage.VampireLanguageFactory; | ||
13 | import hu.bme.mit.inf.dslreasoner.logic.model.builder.LogicSolverConfiguration; | ||
14 | import java.util.List; | ||
15 | import org.eclipse.emf.common.util.EList; | ||
16 | import org.eclipse.xtext.xbase.lib.CollectionLiterals; | ||
17 | import org.eclipse.xtext.xbase.lib.Extension; | ||
18 | import org.eclipse.xtext.xbase.lib.Functions.Function1; | ||
19 | import org.eclipse.xtext.xbase.lib.ListExtensions; | ||
20 | import org.eclipse.xtext.xbase.lib.ObjectExtensions; | ||
21 | import org.eclipse.xtext.xbase.lib.Procedures.Procedure1; | ||
22 | |||
23 | @SuppressWarnings("all") | ||
24 | public class Logic2VampireLanguageMapper_ScopeMapper { | ||
25 | @Extension | ||
26 | private final VampireLanguageFactory factory = VampireLanguageFactory.eINSTANCE; | ||
27 | |||
28 | private final Logic2VampireLanguageMapper_Support support = new Logic2VampireLanguageMapper_Support(); | ||
29 | |||
30 | private final Logic2VampireLanguageMapper base; | ||
31 | |||
32 | public Logic2VampireLanguageMapper_ScopeMapper(final Logic2VampireLanguageMapper base) { | ||
33 | this.base = base; | ||
34 | } | ||
35 | |||
36 | public void _transformScope(final LogicSolverConfiguration config, final Logic2VampireLanguageMapperTrace trace) { | ||
37 | VLSVariable _createVLSVariable = this.factory.createVLSVariable(); | ||
38 | final Procedure1<VLSVariable> _function = (VLSVariable it) -> { | ||
39 | it.setName("A"); | ||
40 | }; | ||
41 | final VLSVariable variable = ObjectExtensions.<VLSVariable>operator_doubleArrow(_createVLSVariable, _function); | ||
42 | final List<VLSConstant> instances = CollectionLiterals.<VLSConstant>newArrayList(); | ||
43 | for (int i = 0; (i < config.typeScopes.minNewElements); i++) { | ||
44 | { | ||
45 | final int num = (i + 1); | ||
46 | VLSConstant _createVLSConstant = this.factory.createVLSConstant(); | ||
47 | final Procedure1<VLSConstant> _function_1 = (VLSConstant it) -> { | ||
48 | it.setName(("o" + Integer.valueOf(num))); | ||
49 | }; | ||
50 | final VLSConstant cst = ObjectExtensions.<VLSConstant>operator_doubleArrow(_createVLSConstant, _function_1); | ||
51 | instances.add(cst); | ||
52 | } | ||
53 | } | ||
54 | VLSFofFormula _createVLSFofFormula = this.factory.createVLSFofFormula(); | ||
55 | final Procedure1<VLSFofFormula> _function_1 = (VLSFofFormula it) -> { | ||
56 | it.setName("typeScope"); | ||
57 | it.setFofRole("axiom"); | ||
58 | VLSUniversalQuantifier _createVLSUniversalQuantifier = this.factory.createVLSUniversalQuantifier(); | ||
59 | final Procedure1<VLSUniversalQuantifier> _function_2 = (VLSUniversalQuantifier it_1) -> { | ||
60 | EList<VLSVariable> _variables = it_1.getVariables(); | ||
61 | VLSVariable _duplicate = this.support.duplicate(variable); | ||
62 | _variables.add(_duplicate); | ||
63 | VLSEquivalent _createVLSEquivalent = this.factory.createVLSEquivalent(); | ||
64 | final Procedure1<VLSEquivalent> _function_3 = (VLSEquivalent it_2) -> { | ||
65 | it_2.setLeft(this.support.topLevelTypeFunc()); | ||
66 | final Function1<VLSConstant, VLSEquality> _function_4 = (VLSConstant i) -> { | ||
67 | VLSEquality _createVLSEquality = this.factory.createVLSEquality(); | ||
68 | final Procedure1<VLSEquality> _function_5 = (VLSEquality it_3) -> { | ||
69 | VLSVariable _createVLSVariable_1 = this.factory.createVLSVariable(); | ||
70 | final Procedure1<VLSVariable> _function_6 = (VLSVariable it_4) -> { | ||
71 | it_4.setName(variable.getName()); | ||
72 | }; | ||
73 | VLSVariable _doubleArrow = ObjectExtensions.<VLSVariable>operator_doubleArrow(_createVLSVariable_1, _function_6); | ||
74 | it_3.setLeft(_doubleArrow); | ||
75 | it_3.setRight(i); | ||
76 | }; | ||
77 | return ObjectExtensions.<VLSEquality>operator_doubleArrow(_createVLSEquality, _function_5); | ||
78 | }; | ||
79 | it_2.setRight(this.support.unfoldOr(ListExtensions.<VLSConstant, VLSEquality>map(instances, _function_4))); | ||
80 | }; | ||
81 | VLSEquivalent _doubleArrow = ObjectExtensions.<VLSEquivalent>operator_doubleArrow(_createVLSEquivalent, _function_3); | ||
82 | it_1.setOperand(_doubleArrow); | ||
83 | }; | ||
84 | VLSUniversalQuantifier _doubleArrow = ObjectExtensions.<VLSUniversalQuantifier>operator_doubleArrow(_createVLSUniversalQuantifier, _function_2); | ||
85 | it.setFofFormula(_doubleArrow); | ||
86 | }; | ||
87 | final VLSFofFormula cstDec = ObjectExtensions.<VLSFofFormula>operator_doubleArrow(_createVLSFofFormula, _function_1); | ||
88 | EList<VLSFofFormula> _formulas = trace.specification.getFormulas(); | ||
89 | _formulas.add(cstDec); | ||
90 | } | ||
91 | |||
92 | public void transformScope(final LogicSolverConfiguration config, final Logic2VampireLanguageMapperTrace trace) { | ||
93 | _transformScope(config, trace); | ||
94 | return; | ||
95 | } | ||
96 | } | ||