diff options
author | 2020-02-03 15:20:02 -0500 | |
---|---|---|
committer | 2020-02-03 15:20:02 -0500 | |
commit | 4d27f2788d2f728d4ee2be8861df09da62bf135f (patch) | |
tree | fd71433c91ca998d37f0038564e913a724979c80 /Tests/ca.mcgill.ecse.dslreasoner.vampire.test | |
parent | VAMPIRE: Further Post-submission updates (diff) | |
download | VIATRA-Generator-4d27f2788d2f728d4ee2be8861df09da62bf135f.tar.gz VIATRA-Generator-4d27f2788d2f728d4ee2be8861df09da62bf135f.tar.zst VIATRA-Generator-4d27f2788d2f728d4ee2be8861df09da62bf135f.zip |
VAMPIRE: last commit
Diffstat (limited to 'Tests/ca.mcgill.ecse.dslreasoner.vampire.test')
11 files changed, 81 insertions, 40 deletions
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/output/FAMTest/Fam.logicproblem b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/output/FAMTest/Fam.logicproblem index f86a2f3c..48991faa 100644 --- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/output/FAMTest/Fam.logicproblem +++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/output/FAMTest/Fam.logicproblem | |||
@@ -1,7 +1,7 @@ | |||
1 | <?xml version="1.0" encoding="ASCII"?> | 1 | <?xml version="1.0" encoding="ASCII"?> |
2 | <language:LogicProblem xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore2logicannotations="http://www.bme.hu/mit/inf/dslreasoner/logic/model/language/ecore2logicannotation" xmlns:language="http://www.bme.hu/mit/inf/dslreasoner/logic/model/problem" xmlns:language_1="http://www.bme.hu/mit/inf/dslreasoner/logic/model/language"> | 2 | <language:LogicProblem xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore2logicannotations="http://www.bme.hu/mit/inf/dslreasoner/logic/model/language/ecore2logicannotation" xmlns:language="http://www.bme.hu/mit/inf/dslreasoner/logic/model/problem" xmlns:language_1="http://www.bme.hu/mit/inf/dslreasoner/logic/model/language"> |
3 | <types xsi:type="language_1:TypeDeclaration" name="FunctionalElement class" subtypes="//@types.2" isAbstract="true"/> | 3 | <types xsi:type="language_1:TypeDeclaration" name="FunctionalElement class" subtypes="//@types.2" isAbstract="true"/> |
4 | <types xsi:type="language_1:TypeDeclaration" name="FunctionalArchitectureModel class" subtypes="//@types.10 //@types.11" isAbstract="true"/> | 4 | <types xsi:type="language_1:TypeDeclaration" name="FunctionalArchitectureModel class"/> |
5 | <types xsi:type="language_1:TypeDeclaration" name="Function class" supertypes="//@types.0"/> | 5 | <types xsi:type="language_1:TypeDeclaration" name="Function class" supertypes="//@types.0"/> |
6 | <types xsi:type="language_1:TypeDeclaration" name="FAMTerminator class"/> | 6 | <types xsi:type="language_1:TypeDeclaration" name="FAMTerminator class"/> |
7 | <types xsi:type="language_1:TypeDeclaration" name="InformationLink class"/> | 7 | <types xsi:type="language_1:TypeDeclaration" name="InformationLink class"/> |
@@ -10,8 +10,6 @@ | |||
10 | <types xsi:type="language_1:TypeDeclaration" name="FunctionalOutput class" supertypes="//@types.8"/> | 10 | <types xsi:type="language_1:TypeDeclaration" name="FunctionalOutput class" supertypes="//@types.8"/> |
11 | <types xsi:type="language_1:TypeDeclaration" name="FunctionalData class" subtypes="//@types.6 //@types.7" isAbstract="true"/> | 11 | <types xsi:type="language_1:TypeDeclaration" name="FunctionalData class" subtypes="//@types.6 //@types.7" isAbstract="true"/> |
12 | <types xsi:type="language_1:TypeDefinition" name="FunctionType enum" elements="//@elements.0 //@elements.1 //@elements.2"/> | 12 | <types xsi:type="language_1:TypeDefinition" name="FunctionType enum" elements="//@elements.0 //@elements.1 //@elements.2"/> |
13 | <types xsi:type="language_1:TypeDefinition" name="FunctionalArchitectureModel class DefinedPart" supertypes="//@types.1" elements="//@elements.3"/> | ||
14 | <types xsi:type="language_1:TypeDeclaration" name="FunctionalArchitectureModel class UndefinedPart" supertypes="//@types.1"/> | ||
15 | <assertions name="upperMultiplicity interface FunctionalElement" annotations="//@annotations.0"> | 13 | <assertions name="upperMultiplicity interface FunctionalElement" annotations="//@annotations.0"> |
16 | <value xsi:type="language_1:Forall"> | 14 | <value xsi:type="language_1:Forall"> |
17 | <quantifiedVariables name="src"> | 15 | <quantifiedVariables name="src"> |
@@ -496,6 +494,55 @@ | |||
496 | </expression> | 494 | </expression> |
497 | </value> | 495 | </value> |
498 | </assertions> | 496 | </assertions> |
497 | <assertions name="lowerMultiplicity value FunctionalData" annotations="//@annotations.19"> | ||
498 | <value xsi:type="language_1:Forall"> | ||
499 | <quantifiedVariables name="src"> | ||
500 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.8"/> | ||
501 | </quantifiedVariables> | ||
502 | <expression xsi:type="language_1:Exists"> | ||
503 | <quantifiedVariables name="trg 1"> | ||
504 | <range xsi:type="language_1:IntTypeReference"/> | ||
505 | </quantifiedVariables> | ||
506 | <expression xsi:type="language_1:And"> | ||
507 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.15"> | ||
508 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.19/@value/@quantifiedVariables.0"/> | ||
509 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.19/@value/@expression/@quantifiedVariables.0"/> | ||
510 | </operands> | ||
511 | </expression> | ||
512 | </expression> | ||
513 | </value> | ||
514 | </assertions> | ||
515 | <assertions name="upperMultiplicity value FunctionalData" annotations="//@annotations.20"> | ||
516 | <value xsi:type="language_1:Forall"> | ||
517 | <quantifiedVariables name="src"> | ||
518 | <range xsi:type="language_1:ComplexTypeReference" referred="//@types.8"/> | ||
519 | </quantifiedVariables> | ||
520 | <quantifiedVariables name="trg 1"> | ||
521 | <range xsi:type="language_1:IntTypeReference"/> | ||
522 | </quantifiedVariables> | ||
523 | <quantifiedVariables name="trg 2"> | ||
524 | <range xsi:type="language_1:IntTypeReference"/> | ||
525 | </quantifiedVariables> | ||
526 | <expression xsi:type="language_1:Impl"> | ||
527 | <leftOperand xsi:type="language_1:And"> | ||
528 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.15"> | ||
529 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.20/@value/@quantifiedVariables.0"/> | ||
530 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.20/@value/@quantifiedVariables.1"/> | ||
531 | </operands> | ||
532 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@relations.15"> | ||
533 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.20/@value/@quantifiedVariables.0"/> | ||
534 | <parameterSubstitutions xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.20/@value/@quantifiedVariables.2"/> | ||
535 | </operands> | ||
536 | </leftOperand> | ||
537 | <rightOperand xsi:type="language_1:Not"> | ||
538 | <operand xsi:type="language_1:Distinct"> | ||
539 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.20/@value/@quantifiedVariables.1"/> | ||
540 | <operands xsi:type="language_1:SymbolicValue" symbolicReference="//@assertions.20/@value/@quantifiedVariables.2"/> | ||
541 | </operand> | ||
542 | </rightOperand> | ||
543 | </expression> | ||
544 | </value> | ||
545 | </assertions> | ||
499 | <relations xsi:type="language_1:RelationDeclaration" name="interface reference FunctionalElement"> | 546 | <relations xsi:type="language_1:RelationDeclaration" name="interface reference FunctionalElement"> |
500 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.0"/> | 547 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.0"/> |
501 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.5"/> | 548 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.5"/> |
@@ -556,11 +603,14 @@ | |||
556 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.2"/> | 603 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.2"/> |
557 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.9"/> | 604 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.9"/> |
558 | </relations> | 605 | </relations> |
606 | <relations xsi:type="language_1:RelationDeclaration" name="value attribute FunctionalData"> | ||
607 | <parameters xsi:type="language_1:ComplexTypeReference" referred="//@types.8"/> | ||
608 | <parameters xsi:type="language_1:IntTypeReference"/> | ||
609 | </relations> | ||
559 | <elements name="Root literal FunctionType" definedInType="//@types.9"/> | 610 | <elements name="Root literal FunctionType" definedInType="//@types.9"/> |
560 | <elements name="Intermediate literal FunctionType" definedInType="//@types.9"/> | 611 | <elements name="Intermediate literal FunctionType" definedInType="//@types.9"/> |
561 | <elements name="Leaf literal FunctionType" definedInType="//@types.9"/> | 612 | <elements name="Leaf literal FunctionType" definedInType="//@types.9"/> |
562 | <elements name="o 1" definedInType="//@types.10"/> | 613 | <containmentHierarchies typesOrderedInHierarchy="//@types.2 //@types.3 //@types.4 //@types.7 //@types.0 //@types.6 //@types.1 //@types.5 //@types.8" containmentRelations="//@relations.0 //@relations.3 //@relations.4 //@relations.8 //@relations.11 //@relations.12"/> |
563 | <containmentHierarchies typesOrderedInHierarchy="//@types.4 //@types.5 //@types.2 //@types.3 //@types.7 //@types.6 //@types.8 //@types.0 //@types.1 //@types.10 //@types.11" containmentRelations="//@relations.0 //@relations.3 //@relations.4 //@relations.8 //@relations.11 //@relations.12"/> | ||
564 | <annotations xsi:type="ecore2logicannotations:UpperMultiplicityAssertion" target="//@assertions.0" relation="//@relations.0" upper="1"/> | 614 | <annotations xsi:type="ecore2logicannotations:UpperMultiplicityAssertion" target="//@assertions.0" relation="//@relations.0" upper="1"/> |
565 | <annotations xsi:type="ecore2logicannotations:LowerMultiplicityAssertion" target="//@assertions.1" relation="//@relations.1" lower="1"/> | 615 | <annotations xsi:type="ecore2logicannotations:LowerMultiplicityAssertion" target="//@assertions.1" relation="//@relations.1" lower="1"/> |
566 | <annotations xsi:type="ecore2logicannotations:UpperMultiplicityAssertion" target="//@assertions.2" relation="//@relations.1" upper="1"/> | 616 | <annotations xsi:type="ecore2logicannotations:UpperMultiplicityAssertion" target="//@assertions.2" relation="//@relations.1" upper="1"/> |
@@ -580,4 +630,6 @@ | |||
580 | <annotations xsi:type="ecore2logicannotations:InverseRelationAssertion" target="//@assertions.16" inverseA="//@relations.8" inverseB="//@relations.13"/> | 630 | <annotations xsi:type="ecore2logicannotations:InverseRelationAssertion" target="//@assertions.16" inverseA="//@relations.8" inverseB="//@relations.13"/> |
581 | <annotations xsi:type="ecore2logicannotations:LowerMultiplicityAssertion" target="//@assertions.17" relation="//@relations.14" lower="1"/> | 631 | <annotations xsi:type="ecore2logicannotations:LowerMultiplicityAssertion" target="//@assertions.17" relation="//@relations.14" lower="1"/> |
582 | <annotations xsi:type="ecore2logicannotations:UpperMultiplicityAssertion" target="//@assertions.18" relation="//@relations.14" upper="1"/> | 632 | <annotations xsi:type="ecore2logicannotations:UpperMultiplicityAssertion" target="//@assertions.18" relation="//@relations.14" upper="1"/> |
633 | <annotations xsi:type="ecore2logicannotations:LowerMultiplicityAssertion" target="//@assertions.19" relation="//@relations.15" lower="1"/> | ||
634 | <annotations xsi:type="ecore2logicannotations:UpperMultiplicityAssertion" target="//@assertions.20" relation="//@relations.15" upper="1"/> | ||
583 | </language:LogicProblem> | 635 | </language:LogicProblem> |
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/src/ca/mcgill/ecse/dslreasoner/vampire/icse/FAMTest.xtend b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/src/ca/mcgill/ecse/dslreasoner/vampire/icse/FAMTest.xtend index a7da818c..17f9ae5e 100644 --- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/src/ca/mcgill/ecse/dslreasoner/vampire/icse/FAMTest.xtend +++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/src/ca/mcgill/ecse/dslreasoner/vampire/icse/FAMTest.xtend | |||
@@ -1,5 +1,6 @@ | |||
1 | package ca.mcgill.ecse.dslreasoner.vampire.icse | 1 | package ca.mcgill.ecse.dslreasoner.vampire.icse |
2 | 2 | ||
3 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.BackendSolver | ||
3 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolver | 4 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolver |
4 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolverConfiguration | 5 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolverConfiguration |
5 | import functionalarchitecture.FAMTerminator | 6 | import functionalarchitecture.FAMTerminator |
@@ -8,7 +9,6 @@ import functionalarchitecture.FunctionalArchitectureModel | |||
8 | import functionalarchitecture.FunctionalInterface | 9 | import functionalarchitecture.FunctionalInterface |
9 | import functionalarchitecture.FunctionalOutput | 10 | import functionalarchitecture.FunctionalOutput |
10 | import functionalarchitecture.FunctionalarchitecturePackage | 11 | import functionalarchitecture.FunctionalarchitecturePackage |
11 | //import hu.bme.mit.inf.dslreasoner.domains.transima.fam.FamPatterns | ||
12 | import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic | 12 | import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic |
13 | import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2LogicConfiguration | 13 | import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2LogicConfiguration |
14 | import hu.bme.mit.inf.dslreasoner.logic.model.builder.DocumentationLevel | 14 | import hu.bme.mit.inf.dslreasoner.logic.model.builder.DocumentationLevel |
@@ -16,7 +16,6 @@ import hu.bme.mit.inf.dslreasoner.logic.model.logicresult.LogicResult | |||
16 | import hu.bme.mit.inf.dslreasoner.logic.model.logicresult.ModelResult | 16 | import hu.bme.mit.inf.dslreasoner.logic.model.logicresult.ModelResult |
17 | import hu.bme.mit.inf.dslreasoner.logic2ecore.Logic2Ecore | 17 | import hu.bme.mit.inf.dslreasoner.logic2ecore.Logic2Ecore |
18 | import hu.bme.mit.inf.dslreasoner.viatra2logic.Viatra2Logic | 18 | import hu.bme.mit.inf.dslreasoner.viatra2logic.Viatra2Logic |
19 | import hu.bme.mit.inf.dslreasoner.viatra2logic.Viatra2LogicConfiguration | ||
20 | import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretation2logic.InstanceModel2Logic | 19 | import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretation2logic.InstanceModel2Logic |
21 | import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretation2logic.InstanceModel2PartialInterpretation | 20 | import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretation2logic.InstanceModel2PartialInterpretation |
22 | import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace | 21 | import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace |
@@ -46,7 +45,7 @@ class FAMTest { | |||
46 | 45 | ||
47 | // Load DSL | 46 | // Load DSL |
48 | val metamodel = GeneralTest.loadMetamodel(FunctionalarchitecturePackage.eINSTANCE) | 47 | val metamodel = GeneralTest.loadMetamodel(FunctionalarchitecturePackage.eINSTANCE) |
49 | val partialModel = GeneralTest.loadPartialModel(inputs, "FAM/FaModel.xmi") | 48 | // val partialModel = GeneralTest.loadPartialModel(inputs, "FAM/FaModel.xmi") |
50 | // val queries = GeneralTest.loadQueries(metamodel, FamPatterns.instance) | 49 | // val queries = GeneralTest.loadQueries(metamodel, FamPatterns.instance) |
51 | val queries = null | 50 | val queries = null |
52 | 51 | ||
@@ -54,7 +53,7 @@ class FAMTest { | |||
54 | 53 | ||
55 | val modelGenerationProblem = ecore2Logic.transformMetamodel(metamodel, new Ecore2LogicConfiguration()) | 54 | val modelGenerationProblem = ecore2Logic.transformMetamodel(metamodel, new Ecore2LogicConfiguration()) |
56 | var problem = modelGenerationProblem.output | 55 | var problem = modelGenerationProblem.output |
57 | problem = instanceModel2Logic.transform(modelGenerationProblem, partialModel).output | 56 | // problem = instanceModel2Logic.transform(modelGenerationProblem, partialModel).output |
58 | // problem = viatra2Logic.transformQueries(queries, modelGenerationProblem, new Viatra2LogicConfiguration).output | 57 | // problem = viatra2Logic.transformQueries(queries, modelGenerationProblem, new Viatra2LogicConfiguration).output |
59 | workspace.writeModel(problem, "Fam.logicproblem") | 58 | workspace.writeModel(problem, "Fam.logicproblem") |
60 | 59 | ||
@@ -96,6 +95,7 @@ class FAMTest { | |||
96 | it.typeScopes.maxNewElements = 10//25 | 95 | it.typeScopes.maxNewElements = 10//25 |
97 | // if(typeMapMin.size != 0) it.typeScopes.minNewElementsByType = typeMapMin | 96 | // if(typeMapMin.size != 0) it.typeScopes.minNewElementsByType = typeMapMin |
98 | // if(typeMapMax.size != 0) it.typeScopes.maxNewElementsByType = typeMapMax | 97 | // if(typeMapMax.size != 0) it.typeScopes.maxNewElementsByType = typeMapMax |
98 | it.solver = BackendSolver::LOCVAMP | ||
99 | it.contCycleLevel = 5 | 99 | it.contCycleLevel = 5 |
100 | it.uniquenessDuplicates = false | 100 | it.uniquenessDuplicates = false |
101 | ] | 101 | ] |
@@ -110,25 +110,25 @@ class FAMTest { | |||
110 | // Literal(modelGenerationProblem.trace, ecore2Logic.allLiteralsInScope(modelGenerationProblem.trace).get(0) ) | 110 | // Literal(modelGenerationProblem.trace, ecore2Logic.allLiteralsInScope(modelGenerationProblem.trace).get(0) ) |
111 | // ) | 111 | // ) |
112 | // println((ecore2Logic.allAttributesInScope(modelGenerationProblem.trace)).get(0).EAttributeType) | 112 | // println((ecore2Logic.allAttributesInScope(modelGenerationProblem.trace)).get(0).EAttributeType) |
113 | print(interpretations.class) | 113 | // print(interpretations.class) |
114 | for (interpretation : interpretations) { | 114 | // for (interpretation : interpretations) { |
115 | val model = logic2Ecore.transformInterpretation(interpretation, modelGenerationProblem.trace) | 115 | // val model = logic2Ecore.transformInterpretation(interpretation, modelGenerationProblem.trace) |
116 | workspace.writeModel(model, "model.xmi") | 116 | // workspace.writeModel(model, "model.xmi") |
117 | |||
118 | // val representation = im2pi.transform(modelGenerationProblem, model.eAllContents.toList, false)//solution.representation.get(0) // TODO: fix for multiple represenations | ||
119 | // if (representation instanceof PartialInterpretation) { | ||
120 | // val vis1 = new PartialInterpretation2Gml | ||
121 | // val gml = vis1.transform(representation) | ||
122 | // workspace.writeText("model.gml", gml) | ||
123 | // | 117 | // |
124 | // val vis2 = new GraphvizVisualiser | 118 | //// val representation = im2pi.transform(modelGenerationProblem, model.eAllContents.toList, false)//solution.representation.get(0) // TODO: fix for multiple represenations |
125 | // val dot = vis2.visualiseConcretization(representation) | 119 | //// if (representation instanceof PartialInterpretation) { |
126 | // dot.writeToFile(workspace, "model.png") | 120 | //// val vis1 = new PartialInterpretation2Gml |
127 | // } else { | 121 | //// val gml = vis1.transform(representation) |
128 | // println("ERROR") | 122 | //// workspace.writeText("model.gml", gml) |
129 | // } | 123 | //// |
130 | // look here: hu.bme.mit.inf.dslreasoner.application.execution.GenerationTaskExecutor | 124 | //// val vis2 = new GraphvizVisualiser |
131 | } | 125 | //// val dot = vis2.visualiseConcretization(representation) |
126 | //// dot.writeToFile(workspace, "model.png") | ||
127 | //// } else { | ||
128 | //// println("ERROR") | ||
129 | //// } | ||
130 | //// look here: hu.bme.mit.inf.dslreasoner.application.execution.GenerationTaskExecutor | ||
131 | // } | ||
132 | 132 | ||
133 | // transform interpretation to ecore, and it is easy from there | 133 | // transform interpretation to ecore, and it is easy from there |
134 | /*/ | 134 | /*/ |
@@ -147,7 +147,6 @@ class FAMTest { | |||
147 | var totalTimeMin = (System.currentTimeMillis - startTime) / 60000 | 147 | var totalTimeMin = (System.currentTimeMillis - startTime) / 60000 |
148 | var totalTimeSec = ((System.currentTimeMillis - startTime) / 1000) % 60 | 148 | var totalTimeSec = ((System.currentTimeMillis - startTime) / 1000) % 60 |
149 | 149 | ||
150 | println("Problem solved") | ||
151 | println("Time was: " + totalTimeMin + ":" + totalTimeSec) | 150 | println("Time was: " + totalTimeMin + ":" + totalTimeSec) |
152 | } | 151 | } |
153 | 152 | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.EcoreTest.xtendbin b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.EcoreTest.xtendbin index 197ef5c9..7ccbe59f 100644 --- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.EcoreTest.xtendbin +++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.EcoreTest.xtendbin | |||
Binary files differ | |||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.FAMTest.xtendbin b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.FAMTest.xtendbin index 52c819c4..b03f527f 100644 --- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.FAMTest.xtendbin +++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.FAMTest.xtendbin | |||
Binary files differ | |||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.FileSystemTest.xtendbin b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.FileSystemTest.xtendbin index b3b15fba..6bc303df 100644 --- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.FileSystemTest.xtendbin +++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.FileSystemTest.xtendbin | |||
Binary files differ | |||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.GeneralTest.xtendbin b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.GeneralTest.xtendbin index 03bcbad7..a34d7d3b 100644 --- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.GeneralTest.xtendbin +++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.GeneralTest.xtendbin | |||
Binary files differ | |||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.YakinduTest.xtendbin b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.YakinduTest.xtendbin index 0f06a39a..a8c5f173 100644 --- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.YakinduTest.xtendbin +++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/.YakinduTest.xtendbin | |||
Binary files differ | |||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/FAMTest.java b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/FAMTest.java index 8cd08fd8..cd9ba3c1 100644 --- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/FAMTest.java +++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/FAMTest.java | |||
@@ -1,6 +1,7 @@ | |||
1 | package ca.mcgill.ecse.dslreasoner.vampire.icse; | 1 | package ca.mcgill.ecse.dslreasoner.vampire.icse; |
2 | 2 | ||
3 | import ca.mcgill.ecse.dslreasoner.vampire.icse.GeneralTest; | 3 | import ca.mcgill.ecse.dslreasoner.vampire.icse.GeneralTest; |
4 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.BackendSolver; | ||
4 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolver; | 5 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolver; |
5 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolverConfiguration; | 6 | import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolverConfiguration; |
6 | import functionalarchitecture.FAMTerminator; | 7 | import functionalarchitecture.FAMTerminator; |
@@ -27,8 +28,6 @@ import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace; | |||
27 | import java.util.HashMap; | 28 | import java.util.HashMap; |
28 | import java.util.List; | 29 | import java.util.List; |
29 | import java.util.Map; | 30 | import java.util.Map; |
30 | import org.eclipse.emf.common.util.EList; | ||
31 | import org.eclipse.emf.ecore.EObject; | ||
32 | import org.eclipse.emf.ecore.resource.Resource; | 31 | import org.eclipse.emf.ecore.resource.Resource; |
33 | import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl; | 32 | import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl; |
34 | import org.eclipse.xtend2.lib.StringConcatenation; | 33 | import org.eclipse.xtend2.lib.StringConcatenation; |
@@ -59,13 +58,11 @@ public class FAMTest { | |||
59 | map.put("logicproblem", _xMIResourceFactoryImpl); | 58 | map.put("logicproblem", _xMIResourceFactoryImpl); |
60 | InputOutput.<String>println("Input and output workspaces are created"); | 59 | InputOutput.<String>println("Input and output workspaces are created"); |
61 | final EcoreMetamodelDescriptor metamodel = GeneralTest.loadMetamodel(FunctionalarchitecturePackage.eINSTANCE); | 60 | final EcoreMetamodelDescriptor metamodel = GeneralTest.loadMetamodel(FunctionalarchitecturePackage.eINSTANCE); |
62 | final EList<EObject> partialModel = GeneralTest.loadPartialModel(inputs, "FAM/FaModel.xmi"); | ||
63 | final Object queries = null; | 61 | final Object queries = null; |
64 | InputOutput.<String>println("DSL loaded"); | 62 | InputOutput.<String>println("DSL loaded"); |
65 | Ecore2LogicConfiguration _ecore2LogicConfiguration = new Ecore2LogicConfiguration(); | 63 | Ecore2LogicConfiguration _ecore2LogicConfiguration = new Ecore2LogicConfiguration(); |
66 | final TracedOutput<LogicProblem, Ecore2Logic_Trace> modelGenerationProblem = ecore2Logic.transformMetamodel(metamodel, _ecore2LogicConfiguration); | 64 | final TracedOutput<LogicProblem, Ecore2Logic_Trace> modelGenerationProblem = ecore2Logic.transformMetamodel(metamodel, _ecore2LogicConfiguration); |
67 | LogicProblem problem = modelGenerationProblem.getOutput(); | 65 | LogicProblem problem = modelGenerationProblem.getOutput(); |
68 | problem = instanceModel2Logic.transform(modelGenerationProblem, partialModel).getOutput(); | ||
69 | workspace.writeModel(problem, "Fam.logicproblem"); | 66 | workspace.writeModel(problem, "Fam.logicproblem"); |
70 | InputOutput.<String>println("Problem created"); | 67 | InputOutput.<String>println("Problem created"); |
71 | long startTime = System.currentTimeMillis(); | 68 | long startTime = System.currentTimeMillis(); |
@@ -86,6 +83,7 @@ public class FAMTest { | |||
86 | it.documentationLevel = DocumentationLevel.FULL; | 83 | it.documentationLevel = DocumentationLevel.FULL; |
87 | it.typeScopes.minNewElements = 8; | 84 | it.typeScopes.minNewElements = 8; |
88 | it.typeScopes.maxNewElements = 10; | 85 | it.typeScopes.maxNewElements = 10; |
86 | it.solver = BackendSolver.LOCVAMP; | ||
89 | it.contCycleLevel = 5; | 87 | it.contCycleLevel = 5; |
90 | it.uniquenessDuplicates = false; | 88 | it.uniquenessDuplicates = false; |
91 | }; | 89 | }; |
@@ -93,13 +91,6 @@ public class FAMTest { | |||
93 | LogicResult solution = reasoner.solve(problem, vampireConfig, workspace); | 91 | LogicResult solution = reasoner.solve(problem, vampireConfig, workspace); |
94 | InputOutput.<String>println("Problem solved"); | 92 | InputOutput.<String>println("Problem solved"); |
95 | List<? extends LogicModelInterpretation> interpretations = reasoner.getInterpretations(((ModelResult) solution)); | 93 | List<? extends LogicModelInterpretation> interpretations = reasoner.getInterpretations(((ModelResult) solution)); |
96 | InputOutput.<Class<? extends List>>print(interpretations.getClass()); | ||
97 | for (final LogicModelInterpretation interpretation : interpretations) { | ||
98 | { | ||
99 | final EObject model = logic2Ecore.transformInterpretation(interpretation, modelGenerationProblem.getTrace()); | ||
100 | workspace.writeModel(model, "model.xmi"); | ||
101 | } | ||
102 | } | ||
103 | long _currentTimeMillis = System.currentTimeMillis(); | 94 | long _currentTimeMillis = System.currentTimeMillis(); |
104 | long _minus = (_currentTimeMillis - startTime); | 95 | long _minus = (_currentTimeMillis - startTime); |
105 | long totalTimeMin = (_minus / 60000); | 96 | long totalTimeMin = (_minus / 60000); |
@@ -107,7 +98,6 @@ public class FAMTest { | |||
107 | long _minus_1 = (_currentTimeMillis_1 - startTime); | 98 | long _minus_1 = (_currentTimeMillis_1 - startTime); |
108 | long _divide = (_minus_1 / 1000); | 99 | long _divide = (_minus_1 / 1000); |
109 | long totalTimeSec = (_divide % 60); | 100 | long totalTimeSec = (_divide % 60); |
110 | InputOutput.<String>println("Problem solved"); | ||
111 | InputOutput.<String>println(((("Time was: " + Long.valueOf(totalTimeMin)) + ":") + Long.valueOf(totalTimeSec))); | 101 | InputOutput.<String>println(((("Time was: " + Long.valueOf(totalTimeMin)) + ":") + Long.valueOf(totalTimeSec))); |
112 | } catch (Throwable _e) { | 102 | } catch (Throwable _e) { |
113 | throw Exceptions.sneakyThrow(_e); | 103 | throw Exceptions.sneakyThrow(_e); |
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/test/.MedicalSystem.xtendbin b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/test/.MedicalSystem.xtendbin index 5dcd3133..9a2c84d7 100644 --- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/test/.MedicalSystem.xtendbin +++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/test/.MedicalSystem.xtendbin | |||
Binary files differ | |||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/test/.SimpleRun.xtendbin b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/test/.SimpleRun.xtendbin index 68ade593..f39505b0 100644 --- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/test/.SimpleRun.xtendbin +++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/test/.SimpleRun.xtendbin | |||
Binary files differ | |||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/test/.VampireTest.xtendbin b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/test/.VampireTest.xtendbin index 80e7ebe0..51d32da7 100644 --- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/test/.VampireTest.xtendbin +++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/test/.VampireTest.xtendbin | |||
Binary files differ | |||