aboutsummaryrefslogtreecommitdiffstats
path: root/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper.xtend
diff options
context:
space:
mode:
Diffstat (limited to 'Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper.xtend')
-rw-r--r--Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper.xtend14
1 files changed, 13 insertions, 1 deletions
diff --git a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper.xtend b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper.xtend
index f2a7b3f2..ee6365dd 100644
--- a/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper.xtend
+++ b/Solvers/Vampire-Solver/ca.mcgill.ecse.dslreasoner.vampire.reasoner/src/ca/mcgill/ecse/dslreasoner/vampire/reasoner/builder/Logic2VampireLanguageMapper_TypeMapper.xtend
@@ -90,7 +90,7 @@ class Logic2VampireLanguageMapper_TypeMapper {
90 trace.specification.formulas += res 90 trace.specification.formulas += res
91 91
92 // Create objects for the enum elements 92 // Create objects for the enum elements
93 val List<VLSFunction> enumScopeElems = newArrayList 93 val List<VLSTerm> enumScopeElems = newArrayList
94 for (var i = 0; i < type.elements.length; i++) { 94 for (var i = 0; i < type.elements.length; i++) {
95 val num = i + 1 95 val num = i + 1
96 val cstTerm = createVLSFunctionAsTerm => [ 96 val cstTerm = createVLSFunctionAsTerm => [
@@ -100,6 +100,18 @@ class Logic2VampireLanguageMapper_TypeMapper {
100 trace.uniqueInstances.add(cst) 100 trace.uniqueInstances.add(cst)
101 val fct = support.duplicate(type.elements.get(i).lookup(trace.element2Predicate), cstTerm) 101 val fct = support.duplicate(type.elements.get(i).lookup(trace.element2Predicate), cstTerm)
102 enumScopeElems.add(fct) 102 enumScopeElems.add(fct)
103
104 //For paradox Only
105 for (var j = 0; j < type.elements.length; j++) {
106 if(j != i) {
107 val op = support.duplicate(type.elements.get(j).lookup(trace.element2Predicate), cstTerm)
108 val negFct = createVLSUnaryNegation => [
109 it.operand = op
110 ]
111 enumScopeElems.add(negFct)
112 }
113 }
114 //End Paradox
103// enumScopeElems.add(support.topLevelTypeFunc(cstTerm)) 115// enumScopeElems.add(support.topLevelTypeFunc(cstTerm))
104 } 116 }
105 117