aboutsummaryrefslogtreecommitdiffstats
path: root/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/YakinduTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/YakinduTest.java')
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/YakinduTest.java99
1 files changed, 83 insertions, 16 deletions
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/YakinduTest.java b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/YakinduTest.java
index bea4e8a6..81079764 100644
--- a/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/YakinduTest.java
+++ b/Tests/ca.mcgill.ecse.dslreasoner.vampire.test/xtend-gen/ca/mcgill/ecse/dslreasoner/vampire/icse/YakinduTest.java
@@ -1,34 +1,101 @@
1package ca.mcgill.ecse.dslreasoner.vampire.icse; 1package ca.mcgill.ecse.dslreasoner.vampire.icse;
2 2
3import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
3import ca.mcgill.ecse.dslreasoner.vampire.icse.GeneralTest; 4import ca.mcgill.ecse.dslreasoner.vampire.icse.GeneralTest;
4import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage; 5import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolver;
6import ca.mcgill.ecse.dslreasoner.vampire.reasoner.VampireSolverConfiguration;
7import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic;
8import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2LogicConfiguration;
9import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic_Trace;
5import hu.bme.mit.inf.dslreasoner.ecore2logic.EcoreMetamodelDescriptor; 10import hu.bme.mit.inf.dslreasoner.ecore2logic.EcoreMetamodelDescriptor;
11import hu.bme.mit.inf.dslreasoner.logic.model.builder.DocumentationLevel;
12import hu.bme.mit.inf.dslreasoner.logic.model.builder.LogicReasoner;
13import hu.bme.mit.inf.dslreasoner.logic.model.builder.TracedOutput;
14import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.Type;
15import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicProblem;
16import hu.bme.mit.inf.dslreasoner.logic.model.logicresult.LogicResult;
17import hu.bme.mit.inf.dslreasoner.viatra2logic.Viatra2Logic;
18import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretation2logic.InstanceModel2Logic;
6import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace; 19import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace;
20import java.util.HashMap;
7import java.util.Map; 21import java.util.Map;
8import org.eclipse.emf.common.util.EList; 22import org.eclipse.emf.common.util.EList;
9import org.eclipse.emf.ecore.EObject; 23import org.eclipse.emf.ecore.EObject;
10import org.eclipse.emf.ecore.resource.Resource; 24import org.eclipse.emf.ecore.resource.Resource;
11import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl; 25import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
12import org.eclipse.xtend2.lib.StringConcatenation; 26import org.eclipse.xtend2.lib.StringConcatenation;
27import org.eclipse.xtext.xbase.lib.Exceptions;
13import org.eclipse.xtext.xbase.lib.InputOutput; 28import org.eclipse.xtext.xbase.lib.InputOutput;
29import org.eclipse.xtext.xbase.lib.ObjectExtensions;
30import org.eclipse.xtext.xbase.lib.Procedures.Procedure1;
14 31
15@SuppressWarnings("all") 32@SuppressWarnings("all")
16public class YakinduTest { 33public class YakinduTest {
17 public static void main(final String[] args) { 34 public static void main(final String[] args) {
18 StringConcatenation _builder = new StringConcatenation(); 35 try {
19 _builder.append("initialModels/"); 36 final Ecore2Logic ecore2Logic = new Ecore2Logic();
20 final FileSystemWorkspace inputs = new FileSystemWorkspace(_builder.toString(), ""); 37 final Viatra2Logic viatra2Logic = new Viatra2Logic(ecore2Logic);
21 StringConcatenation _builder_1 = new StringConcatenation(); 38 final InstanceModel2Logic instanceModel2Logic = new InstanceModel2Logic();
22 _builder_1.append("output/YakinduTest/"); 39 StringConcatenation _builder = new StringConcatenation();
23 final FileSystemWorkspace workspace = new FileSystemWorkspace(_builder_1.toString(), ""); 40 _builder.append("initialModels/");
24 workspace.initAndClear(); 41 final FileSystemWorkspace inputs = new FileSystemWorkspace(_builder.toString(), "");
25 final Resource.Factory.Registry reg = Resource.Factory.Registry.INSTANCE; 42 StringConcatenation _builder_1 = new StringConcatenation();
26 final Map<String, Object> map = reg.getExtensionToFactoryMap(); 43 _builder_1.append("output/YakinduTest/");
27 XMIResourceFactoryImpl _xMIResourceFactoryImpl = new XMIResourceFactoryImpl(); 44 final FileSystemWorkspace workspace = new FileSystemWorkspace(_builder_1.toString(), "");
28 map.put("logicproblem", _xMIResourceFactoryImpl); 45 workspace.initAndClear();
29 InputOutput.<String>println("Input and output workspaces are created"); 46 final Resource.Factory.Registry reg = Resource.Factory.Registry.INSTANCE;
30 final EcoreMetamodelDescriptor metamodel = GeneralTest.loadMetamodel(YakindummPackage.eINSTANCE); 47 final Map<String, Object> map = reg.getExtensionToFactoryMap();
31 final EList<EObject> partialModel = GeneralTest.loadPartialModel(inputs, "Yakindu.xmi"); 48 XMIResourceFactoryImpl _xMIResourceFactoryImpl = new XMIResourceFactoryImpl();
32 InputOutput.<String>println("DSL loaded"); 49 map.put("logicproblem", _xMIResourceFactoryImpl);
50 InputOutput.<String>println("Input and output workspaces are created");
51 final EcoreMetamodelDescriptor metamodel = GeneralTest.loadMetamodel(yakinduPackage.eINSTANCE);
52 final EList<EObject> partialModel = GeneralTest.loadPartialModel(inputs, "yakindu/yakinduinstance.xmi");
53 final Object queries = null;
54 InputOutput.<String>println("DSL loaded");
55 Ecore2LogicConfiguration _ecore2LogicConfiguration = new Ecore2LogicConfiguration();
56 final TracedOutput<LogicProblem, Ecore2Logic_Trace> modelGenerationProblem = ecore2Logic.transformMetamodel(metamodel, _ecore2LogicConfiguration);
57 LogicProblem problem = modelGenerationProblem.getOutput();
58 workspace.writeModel(problem, "Yakindu.logicproblem");
59 InputOutput.<String>println("Problem created");
60 long startTime = System.currentTimeMillis();
61 LogicReasoner reasoner = null;
62 VampireSolver _vampireSolver = new VampireSolver();
63 reasoner = _vampireSolver;
64 final HashMap<Class, Integer> classMapMin = new HashMap<Class, Integer>();
65 final Map<Type, Integer> typeMapMin = GeneralTest.getTypeMap(classMapMin, metamodel, ecore2Logic, modelGenerationProblem.getTrace());
66 final HashMap<Class, Integer> classMapMax = new HashMap<Class, Integer>();
67 final Map<Type, Integer> typeMapMax = GeneralTest.getTypeMap(classMapMax, metamodel, ecore2Logic, modelGenerationProblem.getTrace());
68 VampireSolverConfiguration _vampireSolverConfiguration = new VampireSolverConfiguration();
69 final Procedure1<VampireSolverConfiguration> _function = (VampireSolverConfiguration it) -> {
70 it.documentationLevel = DocumentationLevel.FULL;
71 it.typeScopes.minNewElements = 20;
72 it.typeScopes.maxNewElements = 30;
73 int _size = typeMapMin.size();
74 boolean _notEquals = (_size != 0);
75 if (_notEquals) {
76 it.typeScopes.minNewElementsByType = typeMapMin;
77 }
78 int _size_1 = typeMapMin.size();
79 boolean _notEquals_1 = (_size_1 != 0);
80 if (_notEquals_1) {
81 it.typeScopes.maxNewElementsByType = typeMapMax;
82 }
83 it.contCycleLevel = 5;
84 it.uniquenessDuplicates = false;
85 };
86 final VampireSolverConfiguration vampireConfig = ObjectExtensions.<VampireSolverConfiguration>operator_doubleArrow(_vampireSolverConfiguration, _function);
87 LogicResult solution = reasoner.solve(problem, vampireConfig, workspace);
88 long _currentTimeMillis = System.currentTimeMillis();
89 long _minus = (_currentTimeMillis - startTime);
90 long totalTimeMin = (_minus / 60000);
91 long _currentTimeMillis_1 = System.currentTimeMillis();
92 long _minus_1 = (_currentTimeMillis_1 - startTime);
93 long _divide = (_minus_1 / 1000);
94 long totalTimeSec = (_divide % 60);
95 InputOutput.<String>println("Problem solved");
96 InputOutput.<String>println(((("Time was: " + Long.valueOf(totalTimeMin)) + ":") + Long.valueOf(totalTimeSec)));
97 } catch (Throwable _e) {
98 throw Exceptions.sneakyThrow(_e);
99 }
33 } 100 }
34} 101}