diff options
Diffstat (limited to 'Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ContainmentMapper.xtend')
-rw-r--r-- | Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ContainmentMapper.xtend | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ContainmentMapper.xtend b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ContainmentMapper.xtend index 0820f47d..ff5a192e 100644 --- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ContainmentMapper.xtend +++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_ContainmentMapper.xtend | |||
@@ -81,6 +81,14 @@ class Logic2VampireLanguageMapper_ContainmentMapper { | |||
81 | val fromType = (l.parameters.get(0) as ComplexTypeReference).referred as Type | 81 | val fromType = (l.parameters.get(0) as ComplexTypeReference).referred as Type |
82 | val toType = (l.parameters.get(1) as ComplexTypeReference).referred as Type | 82 | val toType = (l.parameters.get(1) as ComplexTypeReference).referred as Type |
83 | 83 | ||
84 | val listForAnd = newArrayList | ||
85 | // listForAnd.add(support.duplicate(fromType.lookup(trace.type2Predicate), varB)) | ||
86 | listForAnd.add(support.duplicate((l as RelationDeclaration).lookup(trace.rel2Predicate), varList)) | ||
87 | // listForAnd.add(createVLSInequality => [ | ||
88 | // it.left = support.duplicate(varA) | ||
89 | // it.right = support.duplicate(varB) | ||
90 | // ]) | ||
91 | |||
84 | val relFormula = createVLSFofFormula => [ | 92 | val relFormula = createVLSFofFormula => [ |
85 | it.name = support.toIDMultiple("containment", relName) | 93 | it.name = support.toIDMultiple("containment", relName) |
86 | it.fofRole = "axiom" | 94 | it.fofRole = "axiom" |
@@ -91,11 +99,7 @@ class Logic2VampireLanguageMapper_ContainmentMapper { | |||
91 | it.left = support.duplicate(toType.lookup(trace.type2Predicate), varA) | 99 | it.left = support.duplicate(toType.lookup(trace.type2Predicate), varA) |
92 | it.right = createVLSExistentialQuantifier => [ | 100 | it.right = createVLSExistentialQuantifier => [ |
93 | it.variables += support.duplicate(varB) | 101 | it.variables += support.duplicate(varB) |
94 | it.operand = createVLSAnd => [ | 102 | it.operand = support.unfoldAnd(listForAnd) |
95 | it.left = support.duplicate(fromType.lookup(trace.type2Predicate), varB) | ||
96 | it.right = support.duplicate((l as RelationDeclaration).lookup(trace.rel2Predicate), | ||
97 | varList) | ||
98 | ] | ||
99 | ] | 103 | ] |
100 | 104 | ||
101 | createVLSEquality => [ | 105 | createVLSEquality => [ |