From 24e99dcce1d8803dea979c4a75682b278dccd7cf Mon Sep 17 00:00:00 2001 From: Oszkar Semerath Date: Wed, 15 Apr 2020 01:12:59 +0200 Subject: Alloy type mapping fix --- .../Logic2AlloyLanguageMapper_TypeMapper_FilteredTypes.xtend | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/Logic2AlloyLanguageMapper_TypeMapper_FilteredTypes.xtend') diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/Logic2AlloyLanguageMapper_TypeMapper_FilteredTypes.xtend b/Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/Logic2AlloyLanguageMapper_TypeMapper_FilteredTypes.xtend index 397fb84b..3379ba20 100644 --- a/Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/Logic2AlloyLanguageMapper_TypeMapper_FilteredTypes.xtend +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/Logic2AlloyLanguageMapper_TypeMapper_FilteredTypes.xtend @@ -123,8 +123,8 @@ class Logic2AlloyLanguageMapper_TypeMapper_FilteredTypes implements Logic2AlloyL // 7. Each type is in the intersection of the supertypes for(type : types.filter[it.supertypes.size>=2]) { trace.specification.factDeclarations += createALSFactDeclaration => [ - it.name = support.toIDMultiple("abstract",type.name) - it.term = createALSEquals => [ + it.name = support.toIDMultiple("supertypeIsInIntersection",type.name) + it.term = createALSSubset => [ it.leftOperand = createALSReference => [ it.referred = type.lookup(typeTrace.type2ALSType) ] it.rightOperand = support.unfoldIntersection(type.supertypes.map[e| createALSReference => [it.referred = e.lookup(typeTrace.type2ALSType)]]) @@ -135,7 +135,7 @@ class Logic2AlloyLanguageMapper_TypeMapper_FilteredTypes implements Logic2AlloyL // 8. Each abstract type is equal to the union of the subtypes for(type : types.filter[isIsAbstract]) { trace.specification.factDeclarations += createALSFactDeclaration => [ - it.name = support.toIDMultiple("abstract",type.name) + it.name = support.toIDMultiple("abstractIsUnion",type.name) it.term = createALSEquals => [ it.leftOperand = createALSReference => [ it.referred = type.lookup(typeTrace.type2ALSType) ] it.rightOperand = support.unfoldPlus(type.subtypes.map[e| -- cgit v1.2.3-70-g09d2