aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kris7topher@gmail.com>2019-06-08 18:44:41 -0400
committerLibravatar Kristóf Marussy <kris7topher@gmail.com>2019-06-08 18:44:41 -0400
commit885899d6de5d2e2a630ca8fb33d1e08450008caa (patch)
treecb7b3294c4875e8ecdafaae6d2bfdad708eaa091
parentMDEOptimiser tuning for CPS (diff)
parentDefault state coder range set to Width, as it should be (diff)
downloadVIATRA-Generator-885899d6de5d2e2a630ca8fb33d1e08450008caa.tar.gz
VIATRA-Generator-885899d6de5d2e2a630ca8fb33d1e08450008caa.tar.zst
VIATRA-Generator-885899d6de5d2e2a630ca8fb33d1e08450008caa.zip
Merge remote-tracking branch 'origin/master' into kris
-rw-r--r--Framework/hu.bme.mit.inf.dslreasoner.ecore2logic/src/hu/bme/mit/inf/dslreasoner/ecore2logic/EReferenceMapper.xtend4
-rw-r--r--Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/PartialInterpretation2NeighbourhoodRepresentation.xtend7
-rw-r--r--Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/NeighbourhoodBasedStateCoderFactory.xtend2
3 files changed, 10 insertions, 3 deletions
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.ecore2logic/src/hu/bme/mit/inf/dslreasoner/ecore2logic/EReferenceMapper.xtend b/Framework/hu.bme.mit.inf.dslreasoner.ecore2logic/src/hu/bme/mit/inf/dslreasoner/ecore2logic/EReferenceMapper.xtend
index 179690dd..50f088d4 100644
--- a/Framework/hu.bme.mit.inf.dslreasoner.ecore2logic/src/hu/bme/mit/inf/dslreasoner/ecore2logic/EReferenceMapper.xtend
+++ b/Framework/hu.bme.mit.inf.dslreasoner.ecore2logic/src/hu/bme/mit/inf/dslreasoner/ecore2logic/EReferenceMapper.xtend
@@ -32,7 +32,7 @@ class EReferenceMapper_RelationsOverTypes implements EReferenceMapper{
32 val extension Ecore2logicannotationsFactory builder2 = Ecore2logicannotationsFactory.eINSTANCE 32 val extension Ecore2logicannotationsFactory builder2 = Ecore2logicannotationsFactory.eINSTANCE
33 val extension EClassMapper classMapper; 33 val extension EClassMapper classMapper;
34 34
35 public new(EClassMapper classMapper) { 35 new(EClassMapper classMapper) {
36 this.classMapper = classMapper 36 this.classMapper = classMapper
37 } 37 }
38 38
@@ -117,7 +117,7 @@ class EReferenceMapper_RelationsOverTypes implements EReferenceMapper{
117 def createInverseReferenceConstraints(Ecore2Logic_Trace trace, LogicProblem problem, Iterable<EReference> references) { 117 def createInverseReferenceConstraints(Ecore2Logic_Trace trace, LogicProblem problem, Iterable<EReference> references) {
118 trace.referenceMapperTrace.asTrace.inverseEdges = new HashMap 118 trace.referenceMapperTrace.asTrace.inverseEdges = new HashMap
119 for(reference : references) { 119 for(reference : references) {
120 if(reference.EOpposite!=null) { 120 if(reference.EOpposite!==null && references.exists[it === reference.EOpposite]) {
121 val opposite = reference.EOpposite 121 val opposite = reference.EOpposite
122 if(trace.referenceMapperTrace.asTrace.inverseEdges.containsKey(opposite)) { 122 if(trace.referenceMapperTrace.asTrace.inverseEdges.containsKey(opposite)) {
123 trace.referenceMapperTrace.asTrace.inverseEdges.put(reference,trace.referenceMapperTrace.asTrace.inverseEdges.get(opposite)) 123 trace.referenceMapperTrace.asTrace.inverseEdges.put(reference,trace.referenceMapperTrace.asTrace.inverseEdges.get(opposite))
diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/PartialInterpretation2NeighbourhoodRepresentation.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/PartialInterpretation2NeighbourhoodRepresentation.xtend
index bf593add..6dc40705 100644
--- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/PartialInterpretation2NeighbourhoodRepresentation.xtend
+++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/PartialInterpretation2NeighbourhoodRepresentation.xtend
@@ -41,6 +41,13 @@ abstract class PartialInterpretation2NeighbourhoodRepresentation<ModelRepresenta
41 return createRepresentation(model,range,parallels,maxNumber,null,null) 41 return createRepresentation(model,range,parallels,maxNumber,null,null)
42 } 42 }
43 43
44 /**
45 * Creates a neighbourhood representation with traces
46 * @param model The model to be represented.
47 * @param range The range of the neighbourhood.
48 * @param parallels The maximal number of parallel references to be differentiated.
49 * @param maxNumber The maximal number of elements in a equivalence class that chan be differentiated.
50 */
44 def public createRepresentation( 51 def public createRepresentation(
45 PartialInterpretation model, 52 PartialInterpretation model,
46 int range, int parallels, int maxNumber, 53 int range, int parallels, int maxNumber,
diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/NeighbourhoodBasedStateCoderFactory.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/NeighbourhoodBasedStateCoderFactory.xtend
index b6d2043d..a86bcd1f 100644
--- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/NeighbourhoodBasedStateCoderFactory.xtend
+++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/NeighbourhoodBasedStateCoderFactory.xtend
@@ -43,7 +43,7 @@ class NeighbourhoodBasedStateCoderFactory implements IStateCoderFactory {
43 val Set<RelationDeclaration> relevantRelations 43 val Set<RelationDeclaration> relevantRelations
44 44
45 public new() { 45 public new() {
46 this.range = PartialInterpretation2NeighbourhoodRepresentation::FixPointRage 46 this.range = PartialInterpretation2NeighbourhoodRepresentation::GraphWidthRange
47 this.parallels = PartialInterpretation2NeighbourhoodRepresentation::FullParallels 47 this.parallels = PartialInterpretation2NeighbourhoodRepresentation::FullParallels
48 this.maxNumber = PartialInterpretation2NeighbourhoodRepresentation::MaxNumbers 48 this.maxNumber = PartialInterpretation2NeighbourhoodRepresentation::MaxNumbers
49 this.relevantTypes = null 49 this.relevantTypes = null