aboutsummaryrefslogtreecommitdiffstats
path: root/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend
diff options
context:
space:
mode:
authorLibravatar oszka <oszka@SEMERATH-LAPTOP>2019-04-16 10:28:25 +0200
committerLibravatar oszka <oszka@SEMERATH-LAPTOP>2019-04-16 10:28:25 +0200
commita143c9f7a5b9da04dc0617705119841c24e3fc41 (patch)
treea433c70ca8680e4cb332a3f0aefb3ffe791a27e0 /Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend
parentParseUtil hijacked original vql parser and caused errors - fix by kris7t (diff)
downloadVIATRA-Generator-a143c9f7a5b9da04dc0617705119841c24e3fc41.tar.gz
VIATRA-Generator-a143c9f7a5b9da04dc0617705119841c24e3fc41.tar.zst
VIATRA-Generator-a143c9f7a5b9da04dc0617705119841c24e3fc41.zip
Fixed misformalization of (may/must)(X!=Y) for abstract objects
Diffstat (limited to 'Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend')
-rw-r--r--Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend8
1 files changed, 4 insertions, 4 deletions
diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend
index 329d3658..9723373f 100644
--- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend
+++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend
@@ -179,7 +179,7 @@ class RelationDefinitionIndexer {
179 } 179 }
180 180
181 private def CharSequence transformEquality(Modality modality, PVariable a, PVariable b) { 181 private def CharSequence transformEquality(Modality modality, PVariable a, PVariable b) {
182 if(modality.isMustOrCurrent) '''«a.canonizeName» == «b.canonizeName»;''' 182 if(modality.isMustOrCurrent) '''find mustEquivalent(problem, interpretation, «a.canonizeName», «b.canonizeName»);'''
183 else '''find mayEquivalent(problem, interpretation, «a.canonizeName», «b.canonizeName»);''' 183 else '''find mayEquivalent(problem, interpretation, «a.canonizeName», «b.canonizeName»);'''
184 } 184 }
185 185
@@ -187,11 +187,11 @@ class RelationDefinitionIndexer {
187 val a = inequality.who 187 val a = inequality.who
188 val b = inequality.withWhom 188 val b = inequality.withWhom
189 if(modality.isCurrent) { 189 if(modality.isCurrent) {
190 return '''«a.canonizeName» != «b.canonizeName»;''' 190 return '''neg find mustEquivalent(problem, interpretation, «a.canonizeName», «b.canonizeName»);'''
191 } else if(modality.isMust) { 191 } else if(modality.isMust) {
192 return '''neg find mayEquivalent(problem, interpretation, «a.canonizeName», «b.canonizeName»);''' 192 return '''neg find mayEquivalent(problem, interpretation, «a.canonizeName», «b.canonizeName»);'''
193 } else { 193 } else { // modality.isMay
194 return '''«a.canonizeName» != «b.canonizeName»;''' 194 return '''neg find mustEquivalent(problem, interpretation, «a.canonizeName», «b.canonizeName»);'''
195 } 195 }
196 } 196 }
197 197