aboutsummaryrefslogtreecommitdiffstats
path: root/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/GeneralTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/GeneralTest.java')
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/GeneralTest.java107
1 files changed, 11 insertions, 96 deletions
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/GeneralTest.java b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/GeneralTest.java
index 0150ef1d..0bb8f76e 100644
--- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/GeneralTest.java
+++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/GeneralTest.java
@@ -1,27 +1,12 @@
1package ca.mcgill.ecse.dslreasoner.vampire.icse; 1package ca.mcgill.ecse.dslreasoner.vampire.icse;
2 2
3import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolver;
4import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolverConfiguration;
5import ca.mcgill.ecse.dslreasoner.vampireLanguage.VampireLanguageFactory;
6import com.google.common.base.Objects; 3import com.google.common.base.Objects;
7import com.google.common.collect.Iterables; 4import com.google.common.collect.Iterables;
8import functionalarchitecture.Function;
9import functionalarchitecture.FunctionalOutput;
10import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic; 5import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic;
11import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2LogicConfiguration;
12import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic_Trace; 6import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic_Trace;
13import hu.bme.mit.inf.dslreasoner.ecore2logic.EcoreMetamodelDescriptor; 7import hu.bme.mit.inf.dslreasoner.ecore2logic.EcoreMetamodelDescriptor;
14import hu.bme.mit.inf.dslreasoner.logic.model.builder.DocumentationLevel;
15import hu.bme.mit.inf.dslreasoner.logic.model.builder.LogicReasoner;
16import hu.bme.mit.inf.dslreasoner.logic.model.builder.TracedOutput;
17import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.Type; 8import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.Type;
18import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicProblem;
19import hu.bme.mit.inf.dslreasoner.logic.model.logicresult.LogicResult;
20import hu.bme.mit.inf.dslreasoner.logic2ecore.Logic2Ecore;
21import hu.bme.mit.inf.dslreasoner.viatra2logic.Viatra2Logic;
22import hu.bme.mit.inf.dslreasoner.viatra2logic.ViatraQuerySetDescriptor; 9import hu.bme.mit.inf.dslreasoner.viatra2logic.ViatraQuerySetDescriptor;
23import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretation2logic.InstanceModel2Logic;
24import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace;
25import hu.bme.mit.inf.dslreasoner.workspace.ReasonerWorkspace; 10import hu.bme.mit.inf.dslreasoner.workspace.ReasonerWorkspace;
26import java.util.Collections; 11import java.util.Collections;
27import java.util.HashMap; 12import java.util.HashMap;
@@ -43,94 +28,24 @@ import org.eclipse.viatra.query.runtime.api.IQueryGroup;
43import org.eclipse.viatra.query.runtime.api.IQuerySpecification; 28import org.eclipse.viatra.query.runtime.api.IQuerySpecification;
44import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; 29import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation;
45import org.eclipse.xtext.xbase.lib.CollectionLiterals; 30import org.eclipse.xtext.xbase.lib.CollectionLiterals;
46import org.eclipse.xtext.xbase.lib.Exceptions;
47import org.eclipse.xtext.xbase.lib.Extension;
48import org.eclipse.xtext.xbase.lib.Functions.Function1; 31import org.eclipse.xtext.xbase.lib.Functions.Function1;
49import org.eclipse.xtext.xbase.lib.InputOutput;
50import org.eclipse.xtext.xbase.lib.IterableExtensions; 32import org.eclipse.xtext.xbase.lib.IterableExtensions;
51import org.eclipse.xtext.xbase.lib.ListExtensions; 33import org.eclipse.xtext.xbase.lib.ListExtensions;
52import org.eclipse.xtext.xbase.lib.ObjectExtensions;
53import org.eclipse.xtext.xbase.lib.Procedures.Procedure1;
54 34
55@SuppressWarnings("all") 35@SuppressWarnings("all")
56public class GeneralTest { 36public class GeneralTest {
57 public static String createAndSolveProblem(final EcoreMetamodelDescriptor metamodel, final List<EObject> partialModel, final ViatraQuerySetDescriptor queries, final FileSystemWorkspace workspace) { 37 public static Map<Type, Integer> getTypeMap(final Map<Class, Integer> classMap, final EcoreMetamodelDescriptor metamodel, final Ecore2Logic e2l, final Ecore2Logic_Trace trace) {
58 try { 38 final HashMap<Type, Integer> typeMap = new HashMap<Type, Integer>();
59 String _xblockexpression = null; 39 final Function1<EClass, String> _function = (EClass s) -> {
60 { 40 return s.getName();
61 @Extension 41 };
62 final VampireLanguageFactory factory = VampireLanguageFactory.eINSTANCE; 42 final Map<String, EClass> listMap = IterableExtensions.<String, EClass>toMap(metamodel.getClasses(), _function);
63 final Ecore2Logic ecore2Logic = new Ecore2Logic(); 43 Set<Class> _keySet = classMap.keySet();
64 final Logic2Ecore logic2Ecore = new Logic2Ecore(ecore2Logic); 44 for (final Class elem : _keySet) {
65 final Viatra2Logic viatra2Logic = new Viatra2Logic(ecore2Logic); 45 typeMap.put(
66 final InstanceModel2Logic instanceModel2Logic = new InstanceModel2Logic(); 46 e2l.TypeofEClass(trace, listMap.get(elem.getSimpleName())), classMap.get(elem));
67 Ecore2LogicConfiguration _ecore2LogicConfiguration = new Ecore2LogicConfiguration();
68 final TracedOutput<LogicProblem, Ecore2Logic_Trace> modelGenerationProblem = ecore2Logic.transformMetamodel(metamodel, _ecore2LogicConfiguration);
69 LogicProblem problem = modelGenerationProblem.getOutput();
70 workspace.writeModel(problem, "Fam.logicproblem");
71 InputOutput.<String>println("Problem created");
72 long startTime = System.currentTimeMillis();
73 LogicResult solution = null;
74 LogicReasoner reasoner = null;
75 VampireSolver _vampireSolver = new VampireSolver();
76 reasoner = _vampireSolver;
77 final HashMap<Type, Integer> typeMapMin = new HashMap<Type, Integer>();
78 final HashMap<Type, Integer> typeMapMax = new HashMap<Type, Integer>();
79 final Function1<EClass, String> _function = (EClass s) -> {
80 return s.getName();
81 };
82 final Map<String, EClass> list2MapMin = IterableExtensions.<String, EClass>toMap(metamodel.getClasses(), _function);
83 final Function1<EClass, String> _function_1 = (EClass s) -> {
84 return s.getName();
85 };
86 final Map<String, EClass> list2MapMax = IterableExtensions.<String, EClass>toMap(metamodel.getClasses(), _function_1);
87 typeMapMin.put(
88 ecore2Logic.TypeofEClass(modelGenerationProblem.getTrace(),
89 list2MapMin.get(Function.class.getSimpleName())), Integer.valueOf(1));
90 typeMapMin.put(
91 ecore2Logic.TypeofEClass(modelGenerationProblem.getTrace(),
92 list2MapMin.get(functionalarchitecture.FunctionalInterface.class.getSimpleName())), Integer.valueOf(2));
93 typeMapMin.put(
94 ecore2Logic.TypeofEClass(modelGenerationProblem.getTrace(),
95 list2MapMin.get(FunctionalOutput.class.getSimpleName())), Integer.valueOf(3));
96 typeMapMax.put(
97 ecore2Logic.TypeofEClass(
98 modelGenerationProblem.getTrace(),
99 list2MapMax.get(Function.class.getSimpleName())), Integer.valueOf(5));
100 typeMapMax.put(
101 ecore2Logic.TypeofEClass(
102 modelGenerationProblem.getTrace(),
103 list2MapMax.get(functionalarchitecture.FunctionalInterface.class.getSimpleName())), Integer.valueOf(2));
104 typeMapMax.put(
105 ecore2Logic.TypeofEClass(
106 modelGenerationProblem.getTrace(),
107 list2MapMax.get(FunctionalOutput.class.getSimpleName())), Integer.valueOf(4));
108 VampireSolverConfiguration _vampireSolverConfiguration = new VampireSolverConfiguration();
109 final Procedure1<VampireSolverConfiguration> _function_2 = (VampireSolverConfiguration it) -> {
110 it.documentationLevel = DocumentationLevel.FULL;
111 it.typeScopes.minNewElements = 4;
112 it.typeScopes.maxNewElements = 25;
113 it.typeScopes.minNewElementsByType = typeMapMin;
114 it.typeScopes.maxNewElementsByType = typeMapMax;
115 it.contCycleLevel = 5;
116 it.uniquenessDuplicates = false;
117 };
118 final VampireSolverConfiguration vampireConfig = ObjectExtensions.<VampireSolverConfiguration>operator_doubleArrow(_vampireSolverConfiguration, _function_2);
119 solution = reasoner.solve(problem, vampireConfig, workspace);
120 long _currentTimeMillis = System.currentTimeMillis();
121 long _minus = (_currentTimeMillis - startTime);
122 long totalTimeMin = (_minus / 60000);
123 long _currentTimeMillis_1 = System.currentTimeMillis();
124 long _minus_1 = (_currentTimeMillis_1 - startTime);
125 long _divide = (_minus_1 / 1000);
126 long totalTimeSec = (_divide % 60);
127 InputOutput.<String>println("Problem solved");
128 _xblockexpression = InputOutput.<String>println(((("Time was: " + Long.valueOf(totalTimeMin)) + ":") + Long.valueOf(totalTimeSec)));
129 }
130 return _xblockexpression;
131 } catch (Throwable _e) {
132 throw Exceptions.sneakyThrow(_e);
133 } 47 }
48 return typeMap;
134 } 49 }
135 50
136 public static EcoreMetamodelDescriptor loadMetamodel(final EPackage pckg) { 51 public static EcoreMetamodelDescriptor loadMetamodel(final EPackage pckg) {