From c1f185fd8fc2c3dfc123d9271726c588963c7c01 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Mon, 8 Apr 2019 00:58:00 +0200 Subject: Objective POC implementation --- .../reasoner/optimization/ObjectiveKind.java | 36 ++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ObjectiveKind.java (limited to 'Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ObjectiveKind.java') diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ObjectiveKind.java b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ObjectiveKind.java new file mode 100644 index 00000000..f65428fe --- /dev/null +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ObjectiveKind.java @@ -0,0 +1,36 @@ +package hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.optimization; + +import java.util.Comparator; + +import org.eclipse.viatra.dse.objectives.Comparators; + +public enum ObjectiveKind { + LOWER_IS_BETTER { + + @Override + public Comparator getComparator() { + return Comparators.LOWER_IS_BETTER; + } + + }, + HIGHER_IS_BETTER { + + @Override + public Comparator getComparator() { + return Comparators.HIGHER_IS_BETTER; + } + + }; + + public abstract Comparator getComparator(); + + public static ObjectiveKind fromComparator(Comparator comparator) { + if (Comparators.LOWER_IS_BETTER.equals(comparator)) { + return ObjectiveKind.LOWER_IS_BETTER; + } else if (Comparators.HIGHER_IS_BETTER.equals(comparator)) { + return ObjectiveKind.HIGHER_IS_BETTER; + } else { + throw new IllegalStateException("Only LOWER_IS_BETTER and HIGHER_IS_BETTER comparators are supported."); + } + } +} -- cgit v1.2.3-54-g00ecf From c0c5a1644cc221352b8b9b370eea6a87677ba948 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Sat, 15 Jun 2019 20:56:47 -0400 Subject: Try fix statecode bug Modified graph width calculation to not depend on order of nodes --- .../configs/generation.vsconfig | 2 +- .../outputs/debug/errors.txt | 13 - .../outputs/debug/generated3valued.vql_deactivated | 3000 -------------------- .../outputs/debug/init.partialmodel | 147 - .../outputs/log.txt | 2 +- .../outputs/models/1.gml | 2453 ---------------- .../outputs/models/1.png | Bin 527932 -> 0 bytes .../outputs/models/1.xmi | 47 - .../outputs/models/2.gml | 2453 ---------------- .../outputs/models/2.png | Bin 541309 -> 0 bytes .../outputs/models/2.xmi | 47 - .../outputs/models/3.gml | 2452 ---------------- .../outputs/models/3.png | Bin 527179 -> 0 bytes .../outputs/models/3.xmi | 47 - .../outputs/models/4.gml | 2452 ---------------- .../outputs/models/4.png | Bin 546802 -> 0 bytes .../outputs/models/4.xmi | 47 - .../outputs/models/5.gml | 2452 ---------------- .../outputs/models/5.png | Bin 536645 -> 0 bytes .../outputs/models/5.xmi | 47 - .../outputs/models/run1/1_1.gml | 182 +- .../outputs/models/run1/1_1.png | Bin 677187 -> 552885 bytes .../outputs/models/run1/1_1.xmi | 40 +- .../outputs/models/run2/2_1.gml | 213 +- .../outputs/models/run2/2_1.png | Bin 548270 -> 546742 bytes .../outputs/models/run2/2_1.xmi | 36 +- .../outputs/models/run3/3_1.gml | 247 +- .../outputs/models/run3/3_1.png | Bin 652469 -> 570634 bytes .../outputs/models/run3/3_1.xmi | 36 +- .../outputs/models/run4/4_1.gml | 241 +- .../outputs/models/run4/4_1.png | Bin 606191 -> 662713 bytes .../outputs/models/run4/4_1.xmi | 32 +- .../outputs/models/run5/5_1.gml | 2452 ---------------- .../outputs/models/run5/5_1.png | Bin 592755 -> 0 bytes .../outputs/models/run5/5_1.xmi | 47 - .../outputs/statistics.csv | 7 - .../plugin.xml | 3 - .../satellite/queries/SatelliteQueries.java | 33 - .../queries/internal/SatelliteQueriesAll.java | 51 - .../queries/internal/SpacecraftOfKindCount.java | 189 -- .../domains/satellite/mdeo/CostObjective.xtend | 22 +- .../domains/satellite/queries/SatelliteQueries.vql | 282 +- .../domains/satellite/mdeo/.CostObjective.xtendbin | Bin 2595 -> 805 bytes .../mdeo/.LocalSearchEngineManager.xtendbin | Bin 4284 -> 4261 bytes .../mdeo/.PatternMatchConstraint.xtendbin | Bin 5113 -> 5091 bytes .../domains/satellite/mdeo/CostObjective.java | 16 - .../neighbourhood/Descriptor.xtend | 188 +- .../neighbourhood/NeighbourhoodOptions.xtend | 22 + ...nterpretation2NeighbourhoodRepresentation.xtend | 456 +-- ...ation2PairwiseNeighbourhoodRepresentation.xtend | 68 + ...bstractNeighborhoodBasedStateCoderFactory.xtend | 137 + .../IdentifierBasedStateCoderFactory.xtend | 4 +- .../NeighbourhoodBasedStateCoderFactory.xtend | 275 +- ...irwiseNeighbourhoodBasedStateCoderFactory.xtend | 75 + .../viatrasolver/reasoner/ViatraReasoner.xtend | 9 +- .../reasoner/ViatraReasonerConfiguration.xtend | 3 +- .../dse/BestFirstStrategyForModelGeneration.java | 8 +- .../AbstractThreeValuedObjective.xtend | 71 +- .../CompositeDirectionalThresholdObjective.xtend | 62 + .../DirectionalThresholdObjective.xtend | 164 ++ .../reasoner/optimization/MatchCostObjective.xtend | 52 + .../reasoner/optimization/ObjectiveKind.java | 24 + .../optimization/QueryBasedObjective.xtend | 48 + .../optimization/ThreeValuedCostObjective.xtend | 2 +- 64 files changed, 1764 insertions(+), 19694 deletions(-) delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/errors.txt delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/generated3valued.vql_deactivated delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/init.partialmodel delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/1.gml delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/1.png delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/1.xmi delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/2.gml delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/2.png delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/2.xmi delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/3.gml delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/3.png delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/3.xmi delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/4.gml delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/4.png delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/4.xmi delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/5.gml delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/5.png delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/5.xmi delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run5/5_1.gml delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run5/5_1.png delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run5/5_1.xmi delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/statistics.csv delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/internal/SpacecraftOfKindCount.java delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/CostObjective.java create mode 100644 Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/NeighbourhoodOptions.xtend create mode 100644 Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/PartialInterpretation2PairwiseNeighbourhoodRepresentation.xtend create mode 100644 Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/AbstractNeighborhoodBasedStateCoderFactory.xtend create mode 100644 Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/PairwiseNeighbourhoodBasedStateCoderFactory.xtend create mode 100644 Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/CompositeDirectionalThresholdObjective.xtend create mode 100644 Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/DirectionalThresholdObjective.xtend create mode 100644 Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/MatchCostObjective.xtend create mode 100644 Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/QueryBasedObjective.xtend (limited to 'Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ObjectiveKind.java') diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/configs/generation.vsconfig b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/configs/generation.vsconfig index 4296e632..66c468d0 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/configs/generation.vsconfig +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/configs/generation.vsconfig @@ -3,7 +3,7 @@ import viatra "src/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/Satellit generate { metamodel = { package satellite excluding { InterferometryMission.observationTime } } - constraints = { package hu.bme.mit.inf.dslreasoner.domains.satellite.queries } + constraints = { package hu.bme.mit.inf.dslreasoner.domains.satellite.queries } partial-model = { "inputs/SatelliteInstance.xmi"} solver = ViatraSolver scope = { diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/errors.txt b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/errors.txt deleted file mode 100644 index 5267304c..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/errors.txt +++ /dev/null @@ -1,13 +0,0 @@ -Error occured (DiagnosticWrappedException): org.eclipse.emf.ecore.xmi.FeatureNotFoundException: Feature 'band' not found. (file:///home/kris/bme/research/VIATRA-Generator/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/inputs/SatelliteInstance.xmi, 11, 24) - org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.handleDemandLoadException(ResourceSetImpl.java:319) - org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:278) - org.eclipse.xtext.resource.XtextResourceSet.getResource(XtextResourceSet.java:265) - org.eclipse.xtext.resource.SynchronizedXtextResourceSet.getResource(SynchronizedXtextResourceSet.java:25) - hu.bme.mit.inf.dslreasoner.application.execution.ModelLoader.loadModel(ModelLoader.java:41) - hu.bme.mit.inf.dslreasoner.application.execution.GenerationTaskExecutor.executeGenerationTask(GenerationTaskExecutor.java:177) - hu.bme.mit.inf.dslreasoner.application.execution.ScriptExecutor._execute(ScriptExecutor.java:137) - hu.bme.mit.inf.dslreasoner.application.execution.ScriptExecutor.execute(ScriptExecutor.java:358) - hu.bme.mit.inf.dslreasoner.application.execution.ScriptExecutor.executeScript(ScriptExecutor.java:118) - hu.bme.mit.inf.dslreasoner.application.execution.StandaloneScriptExecutor.executeScript(StandaloneScriptExecutor.java:155) - hu.bme.mit.inf.dslreasoner.application.execution.StandaloneScriptExecutor.executeScript(StandaloneScriptExecutor.java:147) - hu.bme.mit.inf.dslreasoner.domains.satellite.runner.SatelliteGeneratorMain.main(SatelliteGeneratorMain.java:13) diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/generated3valued.vql_deactivated b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/generated3valued.vql_deactivated deleted file mode 100644 index 9bc66dee..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/generated3valued.vql_deactivated +++ /dev/null @@ -1,3000 +0,0 @@ -import epackage "http://www.bme.hu/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage" -import epackage "http://www.bme.hu/mit/inf/dslreasoner/logic/model/problem" -import epackage "http://www.bme.hu/mit/inf/dslreasoner/logic/model/language" - -////////// -// 0. Util -////////// -private pattern interpretation(problem:LogicProblem, interpretation:PartialInterpretation) { - PartialInterpretation.problem(interpretation,problem); -} - -///////////////////////// -// 0.1 Existence -///////////////////////// -private pattern mustExist(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - find interpretation(problem,interpretation); - LogicProblem.elements(problem,element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); -} - -private pattern mayExist(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - find mustExist(problem,interpretation,element); -} or { - find interpretation(problem,interpretation); - neg find elementCloseWorld(element); - PartialInterpretation.openWorldElements(interpretation,element); -} - -private pattern elementCloseWorld(element:DefinedElement) { - PartialInterpretation.openWorldElements(i,element); - PartialInterpretation.maxNewElements(i,0); -} or { - Scope.targetTypeInterpretation(scope,interpretation); - PartialTypeInterpratation.elements(interpretation,element); - Scope.maxNewElements(scope,0); -} - -//////////////////////// -// 0.2 Equivalence -//////////////////////// -pattern mayEquivalent(problem:LogicProblem, interpretation:PartialInterpretation, a: DefinedElement, b: DefinedElement) { - find mayExist(problem,interpretation,a); - find mayExist(problem,interpretation,b); - a == b; -} -pattern mustEquivalent(problem:LogicProblem, interpretation:PartialInterpretation, a: DefinedElement, b: DefinedElement) { - find mustExist(problem,interpretation,a); - find mustExist(problem,interpretation,b); - a == b; -} - -//////////////////////// -// 0.3 Required Patterns by TypeIndexer -//////////////////////// -private pattern typeInterpretation(problem:LogicProblem, interpretation:PartialInterpretation, type:TypeDeclaration, typeInterpretation:PartialComplexTypeInterpretation) { - find interpretation(problem,interpretation); - LogicProblem.types(problem,type); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); -} - -private pattern directInstanceOf(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement, type:Type) { - find interpretation(problem,interpretation); - LogicProblem.types(problem,type); - TypeDefinition.elements(type,element); -} or { - find interpretation(problem,interpretation); - find typeInterpretation(problem,interpretation,type,typeInterpretation); - PartialComplexTypeInterpretation.elements(typeInterpretation,element); -} - -private pattern isPrimitive(element: PrimitiveElement) { - PrimitiveElement(element); -} - -////////// -// 1. Problem-Specific Base Indexers -////////// -// 1.1 Type Indexers -////////// -// 1.1.1 primitive Type Indexers -////////// - -////////// -// 1.1.2 domain-specific Type Indexers -////////// -/** - * An element must be an instance of type "ConstellationMission class". - */ -private pattern mustInstanceOfConstellationMission_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"ConstellationMission class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewConstellationMission_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"ConstellationMission class"); -} - -/** - * An element may be an instance of type "ConstellationMission class". - */ -private pattern mayInstanceOfConstellationMission_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfInterferometryMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewConstellationMission_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfInterferometryMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewConstellationMission_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfConstellationMission_class(problem,interpretation,element); } -/** - * An element must be an instance of type "InterferometryMission class". - */ -private pattern mustInstanceOfInterferometryMission_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"InterferometryMission class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewInterferometryMission_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"InterferometryMission class"); -} - -/** - * An element may be an instance of type "InterferometryMission class". - */ -private pattern mayInstanceOfInterferometryMission_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfConstellationMission_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewInterferometryMission_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfConstellationMission_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewInterferometryMission_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfInterferometryMission_class(problem,interpretation,element); } -/** - * An element must be an instance of type "CommunicatingElement class". - */ -private pattern mustInstanceOfCommunicatingElement_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"CommunicatingElement class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewCommunicatingElement_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"CommunicatingElement class"); -} - -/** - * An element may be an instance of type "CommunicatingElement class". - */ -private pattern mayInstanceOfCommunicatingElement_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewCommunicatingElement_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewCommunicatingElement_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); } -/** - * An element must be an instance of type "GroundStationNetwork class". - */ -private pattern mustInstanceOfGroundStationNetwork_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"GroundStationNetwork class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewGroundStationNetwork_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"GroundStationNetwork class"); -} - -/** - * An element may be an instance of type "GroundStationNetwork class". - */ -private pattern mayInstanceOfGroundStationNetwork_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewGroundStationNetwork_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewGroundStationNetwork_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); } -/** - * An element must be an instance of type "Spacecraft class". - */ -private pattern mustInstanceOfSpacecraft_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"Spacecraft class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewSpacecraft_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"Spacecraft class"); -} - -/** - * An element may be an instance of type "Spacecraft class". - */ -private pattern mayInstanceOfSpacecraft_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewSpacecraft_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewSpacecraft_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfSpacecraft_class(problem,interpretation,element); } -/** - * An element must be an instance of type "CommSubsystem class". - */ -private pattern mustInstanceOfCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"CommSubsystem class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"CommSubsystem class"); -} - -/** - * An element may be an instance of type "CommSubsystem class". - */ -private pattern mayInstanceOfCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewCommSubsystem_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewCommSubsystem_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfCommSubsystem_class(problem,interpretation,element); } -/** - * An element must be an instance of type "Payload class". - */ -private pattern mustInstanceOfPayload_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"Payload class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewPayload_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"Payload class"); -} - -/** - * An element may be an instance of type "Payload class". - */ -private pattern mayInstanceOfPayload_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfInterferometryPayload_class(problem,interpretation,element); - neg find scopeDisallowsNewPayload_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfInterferometryPayload_class(problem,interpretation,element); - neg find scopeDisallowsNewPayload_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfPayload_class(problem,interpretation,element); } -/** - * An element must be an instance of type "InterferometryPayload class". - */ -private pattern mustInstanceOfInterferometryPayload_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"InterferometryPayload class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewInterferometryPayload_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"InterferometryPayload class"); -} - -/** - * An element may be an instance of type "InterferometryPayload class". - */ -private pattern mayInstanceOfInterferometryPayload_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewInterferometryPayload_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewInterferometryPayload_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfInterferometryPayload_class(problem,interpretation,element); } -/** - * An element must be an instance of type "CubeSat3U class". - */ -private pattern mustInstanceOfCubeSat3U_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"CubeSat3U class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewCubeSat3U_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"CubeSat3U class"); -} - -/** - * An element may be an instance of type "CubeSat3U class". - */ -private pattern mayInstanceOfCubeSat3U_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat6U_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewCubeSat3U_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat6U_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewCubeSat3U_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfCubeSat3U_class(problem,interpretation,element); } -/** - * An element must be an instance of type "CubeSat6U class". - */ -private pattern mustInstanceOfCubeSat6U_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"CubeSat6U class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewCubeSat6U_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"CubeSat6U class"); -} - -/** - * An element may be an instance of type "CubeSat6U class". - */ -private pattern mayInstanceOfCubeSat6U_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat3U_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewCubeSat6U_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat3U_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewCubeSat6U_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfCubeSat6U_class(problem,interpretation,element); } -/** - * An element must be an instance of type "SmallSat class". - */ -private pattern mustInstanceOfSmallSat_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"SmallSat class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewSmallSat_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"SmallSat class"); -} - -/** - * An element may be an instance of type "SmallSat class". - */ -private pattern mayInstanceOfSmallSat_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewSmallSat_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewSmallSat_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfSmallSat_class(problem,interpretation,element); } -/** - * An element must be an instance of type "CubeSat class". - */ -private pattern mustInstanceOfCubeSat_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"CubeSat class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewCubeSat_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"CubeSat class"); -} - -/** - * An element may be an instance of type "CubeSat class". - */ -private pattern mayInstanceOfCubeSat_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat6U_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat3U_class(problem,interpretation,element); - neg find scopeDisallowsNewCubeSat_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat6U_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat3U_class(problem,interpretation,element); - neg find scopeDisallowsNewCubeSat_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfCubeSat_class(problem,interpretation,element); } -/** - * An element must be an instance of type "UHFCommSubsystem class". - */ -private pattern mustInstanceOfUHFCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"UHFCommSubsystem class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewUHFCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"UHFCommSubsystem class"); -} - -/** - * An element may be an instance of type "UHFCommSubsystem class". - */ -private pattern mayInstanceOfUHFCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewUHFCommSubsystem_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewUHFCommSubsystem_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); } -/** - * An element must be an instance of type "XCommSubsystem class". - */ -private pattern mustInstanceOfXCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"XCommSubsystem class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewXCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"XCommSubsystem class"); -} - -/** - * An element may be an instance of type "XCommSubsystem class". - */ -private pattern mayInstanceOfXCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewXCommSubsystem_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewXCommSubsystem_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); } -/** - * An element must be an instance of type "KaCommSubsystem class". - */ -private pattern mustInstanceOfKaCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"KaCommSubsystem class"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewKaCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"KaCommSubsystem class"); -} - -/** - * An element may be an instance of type "KaCommSubsystem class". - */ -private pattern mayInstanceOfKaCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewKaCommSubsystem_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewKaCommSubsystem_class(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); } -/** - * An element must be an instance of type "ConstellationMission class DefinedPart". - */ -private pattern mustInstanceOfConstellationMission_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"ConstellationMission class DefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewConstellationMission_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"ConstellationMission class DefinedPart"); -} - -/** - * An element may be an instance of type "ConstellationMission class DefinedPart". - */ -private pattern mayInstanceOfConstellationMission_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ find mustInstanceOfConstellationMission_class_DefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "ConstellationMission class UndefinedPart". - */ -private pattern mustInstanceOfConstellationMission_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"ConstellationMission class UndefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewConstellationMission_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"ConstellationMission class UndefinedPart"); -} - -/** - * An element may be an instance of type "ConstellationMission class UndefinedPart". - */ -private pattern mayInstanceOfConstellationMission_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfInterferometryMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewConstellationMission_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfInterferometryMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewConstellationMission_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfConstellationMission_class_UndefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "InterferometryMission class DefinedPart". - */ -private pattern mustInstanceOfInterferometryMission_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"InterferometryMission class DefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewInterferometryMission_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"InterferometryMission class DefinedPart"); -} - -/** - * An element may be an instance of type "InterferometryMission class DefinedPart". - */ -private pattern mayInstanceOfInterferometryMission_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ find mustInstanceOfInterferometryMission_class_DefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "InterferometryMission class UndefinedPart". - */ -private pattern mustInstanceOfInterferometryMission_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"InterferometryMission class UndefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewInterferometryMission_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"InterferometryMission class UndefinedPart"); -} - -/** - * An element may be an instance of type "InterferometryMission class UndefinedPart". - */ -private pattern mayInstanceOfInterferometryMission_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewInterferometryMission_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewInterferometryMission_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfInterferometryMission_class_UndefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "CommunicatingElement class DefinedPart". - */ -private pattern mustInstanceOfCommunicatingElement_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"CommunicatingElement class DefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewCommunicatingElement_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"CommunicatingElement class DefinedPart"); -} - -/** - * An element may be an instance of type "CommunicatingElement class DefinedPart". - */ -private pattern mayInstanceOfCommunicatingElement_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ find mustInstanceOfCommunicatingElement_class_DefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "CommunicatingElement class UndefinedPart". - */ -private pattern mustInstanceOfCommunicatingElement_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"CommunicatingElement class UndefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewCommunicatingElement_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"CommunicatingElement class UndefinedPart"); -} - -/** - * An element may be an instance of type "CommunicatingElement class UndefinedPart". - */ -private pattern mayInstanceOfCommunicatingElement_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfSpacecraft_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewCommunicatingElement_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfSpacecraft_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewCommunicatingElement_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfCommunicatingElement_class_UndefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "GroundStationNetwork class DefinedPart". - */ -private pattern mustInstanceOfGroundStationNetwork_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"GroundStationNetwork class DefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewGroundStationNetwork_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"GroundStationNetwork class DefinedPart"); -} - -/** - * An element may be an instance of type "GroundStationNetwork class DefinedPart". - */ -private pattern mayInstanceOfGroundStationNetwork_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ find mustInstanceOfGroundStationNetwork_class_DefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "GroundStationNetwork class UndefinedPart". - */ -private pattern mustInstanceOfGroundStationNetwork_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"GroundStationNetwork class UndefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewGroundStationNetwork_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"GroundStationNetwork class UndefinedPart"); -} - -/** - * An element may be an instance of type "GroundStationNetwork class UndefinedPart". - */ -private pattern mayInstanceOfGroundStationNetwork_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfSpacecraft_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewGroundStationNetwork_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfSpacecraft_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find scopeDisallowsNewGroundStationNetwork_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfGroundStationNetwork_class_UndefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "CommSubsystem class DefinedPart". - */ -private pattern mustInstanceOfCommSubsystem_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"CommSubsystem class DefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewCommSubsystem_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"CommSubsystem class DefinedPart"); -} - -/** - * An element may be an instance of type "CommSubsystem class DefinedPart". - */ -private pattern mayInstanceOfCommSubsystem_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ find mustInstanceOfCommSubsystem_class_DefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "CommSubsystem class UndefinedPart". - */ -private pattern mustInstanceOfCommSubsystem_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"CommSubsystem class UndefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewCommSubsystem_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"CommSubsystem class UndefinedPart"); -} - -/** - * An element may be an instance of type "CommSubsystem class UndefinedPart". - */ -private pattern mayInstanceOfCommSubsystem_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewCommSubsystem_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewCommSubsystem_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "XCommSubsystem class DefinedPart". - */ -private pattern mustInstanceOfXCommSubsystem_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"XCommSubsystem class DefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewXCommSubsystem_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"XCommSubsystem class DefinedPart"); -} - -/** - * An element may be an instance of type "XCommSubsystem class DefinedPart". - */ -private pattern mayInstanceOfXCommSubsystem_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ find mustInstanceOfXCommSubsystem_class_DefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "XCommSubsystem class UndefinedPart". - */ -private pattern mustInstanceOfXCommSubsystem_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"XCommSubsystem class UndefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewXCommSubsystem_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"XCommSubsystem class UndefinedPart"); -} - -/** - * An element may be an instance of type "XCommSubsystem class UndefinedPart". - */ -private pattern mayInstanceOfXCommSubsystem_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewXCommSubsystem_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewXCommSubsystem_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfXCommSubsystem_class_UndefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "KaCommSubsystem class DefinedPart". - */ -private pattern mustInstanceOfKaCommSubsystem_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"KaCommSubsystem class DefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewKaCommSubsystem_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"KaCommSubsystem class DefinedPart"); -} - -/** - * An element may be an instance of type "KaCommSubsystem class DefinedPart". - */ -private pattern mayInstanceOfKaCommSubsystem_class_DefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ find mustInstanceOfKaCommSubsystem_class_DefinedPart(problem,interpretation,element); } -/** - * An element must be an instance of type "KaCommSubsystem class UndefinedPart". - */ -private pattern mustInstanceOfKaCommSubsystem_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) { - Type.name(type,"KaCommSubsystem class UndefinedPart"); - find directInstanceOf(problem,interpretation,element,type); -} -private pattern scopeDisallowsNewKaCommSubsystem_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation) { - find interpretation(problem,interpretation); - PartialInterpretation.scopes(interpretation,scope); - Scope.targetTypeInterpretation(scope,typeInterpretation); - Scope.maxNewElements(scope,0); - PartialComplexTypeInterpretation.interpretationOf(typeInterpretation,type); - Type.name(type,"KaCommSubsystem class UndefinedPart"); -} - -/** - * An element may be an instance of type "KaCommSubsystem class UndefinedPart". - */ -private pattern mayInstanceOfKaCommSubsystem_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewKaCommSubsystem_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find scopeDisallowsNewKaCommSubsystem_class_UndefinedPart(problem, interpretation); - neg find isPrimitive(element); -} or -{ find mustInstanceOfKaCommSubsystem_class_UndefinedPart(problem,interpretation,element); } - -////////// -// 1.2 Relation Declaration Indexers -////////// -/** - * Matcher for detecting tuples t where []groundStationNetwork reference ConstellationMission(source,target) - */ -private pattern mustInRelationgroundStationNetwork_reference_ConstellationMission( - problem:LogicProblem, interpretation:PartialInterpretation, - source: DefinedElement, target:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialrelationinterpretation(interpretation,relationIterpretation); - PartialRelationInterpretation.interpretationOf.name(relationIterpretation,"groundStationNetwork reference ConstellationMission"); - PartialRelationInterpretation.relationlinks(relationIterpretation,link); - BinaryElementRelationLink.param1(link,source); - BinaryElementRelationLink.param2(link,target); -} -/** - * Matcher for detecting tuples t where <>groundStationNetwork reference ConstellationMission(source,target) - */ -private pattern mayInRelationgroundStationNetwork_reference_ConstellationMission( - problem:LogicProblem, interpretation:PartialInterpretation, - source: DefinedElement, target:DefinedElement) -{ - find interpretation(problem,interpretation); - // The two endpoint of the link have to exist - find mayExist(problem, interpretation, source); - find mayExist(problem, interpretation, target); - // Type consistency - find mayInstanceOfConstellationMission_class(problem,interpretation,source); - find mayInstanceOfGroundStationNetwork_class(problem,interpretation,target); - // There are "numberOfExistingReferences" currently existing instances of the reference from the source, - // the upper bound of the multiplicity should be considered. - numberOfExistingReferences == count find mustInRelationgroundStationNetwork_reference_ConstellationMission(problem,interpretation,source,_); - check(numberOfExistingReferences < 1); - // The reference is containment, then a new reference cannot be create if: - // 1. Multiple parents - neg find mustContains4(problem,interpretation,_,target); - // 2. Circle in the containment hierarchy - neg find mustTransitiveContains(source,target); -} or { - find mustInRelationgroundStationNetwork_reference_ConstellationMission(problem,interpretation,source,target); -} -/** - * Matcher for detecting tuples t where []spacecraft reference ConstellationMission(source,target) - */ -private pattern mustInRelationspacecraft_reference_ConstellationMission( - problem:LogicProblem, interpretation:PartialInterpretation, - source: DefinedElement, target:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialrelationinterpretation(interpretation,relationIterpretation); - PartialRelationInterpretation.interpretationOf.name(relationIterpretation,"spacecraft reference ConstellationMission"); - PartialRelationInterpretation.relationlinks(relationIterpretation,link); - BinaryElementRelationLink.param1(link,source); - BinaryElementRelationLink.param2(link,target); -} -/** - * Matcher for detecting tuples t where <>spacecraft reference ConstellationMission(source,target) - */ -private pattern mayInRelationspacecraft_reference_ConstellationMission( - problem:LogicProblem, interpretation:PartialInterpretation, - source: DefinedElement, target:DefinedElement) -{ - find interpretation(problem,interpretation); - // The two endpoint of the link have to exist - find mayExist(problem, interpretation, source); - find mayExist(problem, interpretation, target); - // Type consistency - find mayInstanceOfConstellationMission_class(problem,interpretation,source); - find mayInstanceOfSpacecraft_class(problem,interpretation,target); - // There are "numberOfExistingReferences" currently existing instances of the reference from the source, - // the upper bound of the multiplicity should be considered. - numberOfExistingReferences == count find mustInRelationspacecraft_reference_ConstellationMission(problem,interpretation,source,_); - check(numberOfExistingReferences < 50); - // The reference is containment, then a new reference cannot be create if: - // 1. Multiple parents - neg find mustContains4(problem,interpretation,_,target); - // 2. Circle in the containment hierarchy - neg find mustTransitiveContains(source,target); -} or { - find mustInRelationspacecraft_reference_ConstellationMission(problem,interpretation,source,target); -} -/** - * Matcher for detecting tuples t where []commSubsystem reference CommunicatingElement(source,target) - */ -private pattern mustInRelationcommSubsystem_reference_CommunicatingElement( - problem:LogicProblem, interpretation:PartialInterpretation, - source: DefinedElement, target:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialrelationinterpretation(interpretation,relationIterpretation); - PartialRelationInterpretation.interpretationOf.name(relationIterpretation,"commSubsystem reference CommunicatingElement"); - PartialRelationInterpretation.relationlinks(relationIterpretation,link); - BinaryElementRelationLink.param1(link,source); - BinaryElementRelationLink.param2(link,target); -} -/** - * Matcher for detecting tuples t where <>commSubsystem reference CommunicatingElement(source,target) - */ -private pattern mayInRelationcommSubsystem_reference_CommunicatingElement( - problem:LogicProblem, interpretation:PartialInterpretation, - source: DefinedElement, target:DefinedElement) -{ - find interpretation(problem,interpretation); - // The two endpoint of the link have to exist - find mayExist(problem, interpretation, source); - find mayExist(problem, interpretation, target); - // Type consistency - find mayInstanceOfCommunicatingElement_class(problem,interpretation,source); - find mayInstanceOfCommSubsystem_class(problem,interpretation,target); - // There are "numberOfExistingReferences" currently existing instances of the reference from the source, - // the upper bound of the multiplicity should be considered. - numberOfExistingReferences == count find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,source,_); - check(numberOfExistingReferences < 2); - // The reference is containment, then a new reference cannot be create if: - // 1. Multiple parents - neg find mustContains4(problem,interpretation,_,target); - // 2. Circle in the containment hierarchy - neg find mustTransitiveContains(source,target); -} or { - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,source,target); -} -/** - * Matcher for detecting tuples t where []payload reference Spacecraft(source,target) - */ -private pattern mustInRelationpayload_reference_Spacecraft( - problem:LogicProblem, interpretation:PartialInterpretation, - source: DefinedElement, target:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialrelationinterpretation(interpretation,relationIterpretation); - PartialRelationInterpretation.interpretationOf.name(relationIterpretation,"payload reference Spacecraft"); - PartialRelationInterpretation.relationlinks(relationIterpretation,link); - BinaryElementRelationLink.param1(link,source); - BinaryElementRelationLink.param2(link,target); -} -/** - * Matcher for detecting tuples t where <>payload reference Spacecraft(source,target) - */ -private pattern mayInRelationpayload_reference_Spacecraft( - problem:LogicProblem, interpretation:PartialInterpretation, - source: DefinedElement, target:DefinedElement) -{ - find interpretation(problem,interpretation); - // The two endpoint of the link have to exist - find mayExist(problem, interpretation, source); - find mayExist(problem, interpretation, target); - // Type consistency - find mayInstanceOfSpacecraft_class(problem,interpretation,source); - find mayInstanceOfPayload_class(problem,interpretation,target); - // There are "numberOfExistingReferences" currently existing instances of the reference from the source, - // the upper bound of the multiplicity should be considered. - numberOfExistingReferences == count find mustInRelationpayload_reference_Spacecraft(problem,interpretation,source,_); - check(numberOfExistingReferences < 1); - // The reference is containment, then a new reference cannot be create if: - // 1. Multiple parents - neg find mustContains4(problem,interpretation,_,target); - // 2. Circle in the containment hierarchy - neg find mustTransitiveContains(source,target); -} or { - find mustInRelationpayload_reference_Spacecraft(problem,interpretation,source,target); -} -/** - * Matcher for detecting tuples t where []target reference CommSubsystem(source,target) - */ -private pattern mustInRelationtarget_reference_CommSubsystem( - problem:LogicProblem, interpretation:PartialInterpretation, - source: DefinedElement, target:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialrelationinterpretation(interpretation,relationIterpretation); - PartialRelationInterpretation.interpretationOf.name(relationIterpretation,"target reference CommSubsystem"); - PartialRelationInterpretation.relationlinks(relationIterpretation,link); - BinaryElementRelationLink.param1(link,source); - BinaryElementRelationLink.param2(link,target); -} -/** - * Matcher for detecting tuples t where <>target reference CommSubsystem(source,target) - */ -private pattern mayInRelationtarget_reference_CommSubsystem( - problem:LogicProblem, interpretation:PartialInterpretation, - source: DefinedElement, target:DefinedElement) -{ - find interpretation(problem,interpretation); - // The two endpoint of the link have to exist - find mayExist(problem, interpretation, source); - find mayExist(problem, interpretation, target); - // Type consistency - find mayInstanceOfCommSubsystem_class(problem,interpretation,source); - find mayInstanceOfCommSubsystem_class(problem,interpretation,target); - // There are "numberOfExistingReferences" currently existing instances of the reference from the source, - // the upper bound of the multiplicity should be considered. - numberOfExistingReferences == count find mustInRelationtarget_reference_CommSubsystem(problem,interpretation,source,_); - check(numberOfExistingReferences < 1); -} or { - find mustInRelationtarget_reference_CommSubsystem(problem,interpretation,source,target); -} - -////////// -// 1.3 Relation Definition Indexers -////////// -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries communicationLinkDoesNotStartAtContainingElement -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLinkDoesNotStartAtContainingElement( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Element) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Element); - // Element is exported - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_transmittingCommSubsystem(problem,interpretation,var_Element,var_Comm1); - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_transmittingCommSubsystem(problem,interpretation,var_Element,var_Comm2); - neg find mayEquivalent(problem, interpretation, var_Comm1, var_Comm2); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLinkDoesNotStartAtContainingElement( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Element) -{ - find interpretation(problem,interpretation); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Element); - // Element is exported - find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_transmittingCommSubsystem(problem,interpretation,var_Element,var_Comm1); - find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_transmittingCommSubsystem(problem,interpretation,var_Element,var_Comm2); - neg find mustEquivalent(problem, interpretation, var_Comm1, var_Comm2); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLinkDoesNotStartAtContainingElement( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Element) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Element); - // Element is exported - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_transmittingCommSubsystem(problem,interpretation,var_Element,var_Comm1); - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_transmittingCommSubsystem(problem,interpretation,var_Element,var_Comm2); - neg find mustEquivalent(problem, interpretation, var_Comm1, var_Comm2); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries transmittingCommSubsystem -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_transmittingCommSubsystem( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Element, var_Comm) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Element); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_Comm); - // Element is exported - // Comm is exported - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Element); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Element,var_virtual0); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_Comm); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_Comm); - find mustInRelationtarget_reference_CommSubsystem(problem,interpretation,var_Comm,var_virtual1); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, _var__0); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_transmittingCommSubsystem( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Element, var_Comm) -{ - find interpretation(problem,interpretation); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Element); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_Comm); - // Element is exported - // Comm is exported - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Element); - find mayInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Element,var_virtual0); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mayEquivalent(problem, interpretation, var_virtual0, var_Comm); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_Comm); - find mayInRelationtarget_reference_CommSubsystem(problem,interpretation,var_Comm,var_virtual1); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_virtual1); - find mayEquivalent(problem, interpretation, var_virtual1, _var__0); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_transmittingCommSubsystem( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Element, var_Comm) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Element); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_Comm); - // Element is exported - // Comm is exported - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Element); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Element,var_virtual0); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_Comm); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_Comm); - find mustInRelationtarget_reference_CommSubsystem(problem,interpretation,var_Comm,var_virtual1); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, _var__0); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries notEnoughInterferometryPayloads -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_notEnoughInterferometryPayloads( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Mission) -{ - find interpretation(problem,interpretation); - find mustInstanceOfInterferometryMission_class(problem,interpretation,var_Mission); - // Mission is exported - find mustInstanceOfInterferometryMission_class(problem,interpretation,var_Mission); - neg find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_atLeastTwoInterferometryPayloads(problem,interpretation,var_Mission); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_notEnoughInterferometryPayloads( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Mission) -{ - find interpretation(problem,interpretation); - find mayInstanceOfInterferometryMission_class(problem,interpretation,var_Mission); - // Mission is exported - find mayInstanceOfInterferometryMission_class(problem,interpretation,var_Mission); - neg find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_atLeastTwoInterferometryPayloads(problem,interpretation,var_Mission); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_notEnoughInterferometryPayloads( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Mission) -{ - find interpretation(problem,interpretation); - find mustInstanceOfInterferometryMission_class(problem,interpretation,var_Mission); - // Mission is exported - find mustInstanceOfInterferometryMission_class(problem,interpretation,var_Mission); - neg find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_atLeastTwoInterferometryPayloads(problem,interpretation,var_Mission); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries atLeastTwoInterferometryPayloads -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_atLeastTwoInterferometryPayloads( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Mission) -{ - find interpretation(problem,interpretation); - find mustInstanceOfInterferometryMission_class(problem,interpretation,var_Mission); - // Mission is exported - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_spacecraftWithInterferometryPayload(problem,interpretation,var_Mission,var_Spacecraft1); - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_spacecraftWithInterferometryPayload(problem,interpretation,var_Mission,var_Spacecraft2); - neg find mayEquivalent(problem, interpretation, var_Spacecraft1, var_Spacecraft2); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_atLeastTwoInterferometryPayloads( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Mission) -{ - find interpretation(problem,interpretation); - find mayInstanceOfInterferometryMission_class(problem,interpretation,var_Mission); - // Mission is exported - find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_spacecraftWithInterferometryPayload(problem,interpretation,var_Mission,var_Spacecraft1); - find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_spacecraftWithInterferometryPayload(problem,interpretation,var_Mission,var_Spacecraft2); - neg find mustEquivalent(problem, interpretation, var_Spacecraft1, var_Spacecraft2); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_atLeastTwoInterferometryPayloads( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Mission) -{ - find interpretation(problem,interpretation); - find mustInstanceOfInterferometryMission_class(problem,interpretation,var_Mission); - // Mission is exported - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_spacecraftWithInterferometryPayload(problem,interpretation,var_Mission,var_Spacecraft1); - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_spacecraftWithInterferometryPayload(problem,interpretation,var_Mission,var_Spacecraft2); - neg find mustEquivalent(problem, interpretation, var_Spacecraft1, var_Spacecraft2); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries spacecraftWithInterferometryPayload -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_spacecraftWithInterferometryPayload( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Mission, var_Spacecraft) -{ - find interpretation(problem,interpretation); - find mustInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - // Mission is exported - // Spacecraft is exported - find mustInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mustInRelationspacecraft_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual0); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_Spacecraft); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - find mustInRelationpayload_reference_Spacecraft(problem,interpretation,var_Spacecraft,var_virtual1); - find mustInstanceOfPayload_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, var_Payload); - find mustInstanceOfInterferometryPayload_class(problem,interpretation,var_Payload); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_spacecraftWithInterferometryPayload( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Mission, var_Spacecraft) -{ - find interpretation(problem,interpretation); - find mayInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - // Mission is exported - // Spacecraft is exported - find mayInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mayInRelationspacecraft_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual0); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_virtual0); - find mayEquivalent(problem, interpretation, var_virtual0, var_Spacecraft); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - find mayInRelationpayload_reference_Spacecraft(problem,interpretation,var_Spacecraft,var_virtual1); - find mayInstanceOfPayload_class(problem,interpretation,var_virtual1); - find mayEquivalent(problem, interpretation, var_virtual1, var_Payload); - find mayInstanceOfInterferometryPayload_class(problem,interpretation,var_Payload); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_spacecraftWithInterferometryPayload( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Mission, var_Spacecraft) -{ - find interpretation(problem,interpretation); - find mustInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - // Mission is exported - // Spacecraft is exported - find mustInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mustInRelationspacecraft_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual0); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_Spacecraft); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - find mustInRelationpayload_reference_Spacecraft(problem,interpretation,var_Spacecraft,var_virtual1); - find mustInstanceOfPayload_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, var_Payload); - find mustInstanceOfInterferometryPayload_class(problem,interpretation,var_Payload); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries noLinkToGroundStation -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noLinkToGroundStation( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - // Spacecraft is exported - find mustInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mustInRelationgroundStationNetwork_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual0); - find mustInstanceOfGroundStationNetwork_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_GroundStation); - find mustInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mustInRelationspacecraft_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual1); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, var_Spacecraft); - neg find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectCommunicationLink(problem,interpretation,var_Spacecraft,var_GroundStation); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noLinkToGroundStation( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find interpretation(problem,interpretation); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - // Spacecraft is exported - find mayInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mayInRelationgroundStationNetwork_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual0); - find mayInstanceOfGroundStationNetwork_class(problem,interpretation,var_virtual0); - find mayEquivalent(problem, interpretation, var_virtual0, var_GroundStation); - find mayInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mayInRelationspacecraft_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual1); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_virtual1); - find mayEquivalent(problem, interpretation, var_virtual1, var_Spacecraft); - neg find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectCommunicationLink(problem,interpretation,var_Spacecraft,var_GroundStation); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noLinkToGroundStation( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - // Spacecraft is exported - find mustInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mustInRelationgroundStationNetwork_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual0); - find mustInstanceOfGroundStationNetwork_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_GroundStation); - find mustInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mustInRelationspacecraft_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual1); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, var_Spacecraft); - neg find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectCommunicationLink(problem,interpretation,var_Spacecraft,var_GroundStation); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries noPotentialLinkToGroundStation -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noPotentialLinkToGroundStation( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - // Spacecraft is exported - find mustInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mustInRelationgroundStationNetwork_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual0); - find mustInstanceOfGroundStationNetwork_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_GroundStation); - find mustInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mustInRelationspacecraft_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual1); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, var_Spacecraft); - neg find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectLinkAllowed(problem,interpretation,var_Spacecraft,var_GroundStation); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noPotentialLinkToGroundStation( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find interpretation(problem,interpretation); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - // Spacecraft is exported - find mayInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mayInRelationgroundStationNetwork_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual0); - find mayInstanceOfGroundStationNetwork_class(problem,interpretation,var_virtual0); - find mayEquivalent(problem, interpretation, var_virtual0, var_GroundStation); - find mayInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mayInRelationspacecraft_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual1); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_virtual1); - find mayEquivalent(problem, interpretation, var_virtual1, var_Spacecraft); - neg find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectLinkAllowed(problem,interpretation,var_Spacecraft,var_GroundStation); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noPotentialLinkToGroundStation( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - // Spacecraft is exported - find mustInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mustInRelationgroundStationNetwork_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual0); - find mustInstanceOfGroundStationNetwork_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_GroundStation); - find mustInstanceOfConstellationMission_class(problem,interpretation,var_Mission); - find mustInRelationspacecraft_reference_ConstellationMission(problem,interpretation,var_Mission,var_virtual1); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, var_Spacecraft); - neg find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectLinkAllowed(problem,interpretation,var_Spacecraft,var_GroundStation); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries indirectLinkAllowed -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectLinkAllowed( - problem:LogicProblem, interpretation:PartialInterpretation, - var_From, var_To) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find twoParam_mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_linkAllowed+(var_From,var_To); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectLinkAllowed( - problem:LogicProblem, interpretation:PartialInterpretation, - var_From, var_To) -{ - find interpretation(problem,interpretation); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find twoParam_mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_linkAllowed+(var_From,var_To); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectLinkAllowed( - problem:LogicProblem, interpretation:PartialInterpretation, - var_From, var_To) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find twoParam_currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_linkAllowed+(var_From,var_To); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries linkAllowed -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_linkAllowed( - problem:LogicProblem, interpretation:PartialInterpretation, - var_From, var_To) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingAntenna(problem,interpretation,var_From,var_To); - neg find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSat3U(problem,interpretation,var_From); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingAntenna(problem,interpretation,var_From,var_To); - find mustInstanceOfCubeSat3U_class(problem,interpretation,var_From); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingAntenna(problem,interpretation,var_From,var_To); - find mustInstanceOfCubeSat3U_class(problem,interpretation,var_From); - find mustInstanceOfGroundStationNetwork_class(problem,interpretation,var_To); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_linkAllowed( - problem:LogicProblem, interpretation:PartialInterpretation, - var_From, var_To) -{ - find interpretation(problem,interpretation); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingAntenna(problem,interpretation,var_From,var_To); - neg find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSat3U(problem,interpretation,var_From); -}or{ - find interpretation(problem,interpretation); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingAntenna(problem,interpretation,var_From,var_To); - find mayInstanceOfCubeSat3U_class(problem,interpretation,var_From); -}or{ - find interpretation(problem,interpretation); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingAntenna(problem,interpretation,var_From,var_To); - find mayInstanceOfCubeSat3U_class(problem,interpretation,var_From); - find mayInstanceOfGroundStationNetwork_class(problem,interpretation,var_To); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_linkAllowed( - problem:LogicProblem, interpretation:PartialInterpretation, - var_From, var_To) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingAntenna(problem,interpretation,var_From,var_To); - neg find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSat3U(problem,interpretation,var_From); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingAntenna(problem,interpretation,var_From,var_To); - find mustInstanceOfCubeSat3U_class(problem,interpretation,var_From); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingAntenna(problem,interpretation,var_From,var_To); - find mustInstanceOfCubeSat3U_class(problem,interpretation,var_From); - find mustInstanceOfGroundStationNetwork_class(problem,interpretation,var_To); -} -private pattern twoParam_mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_linkAllowed(var_From, var_To) { - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_linkAllowed(_,_,var_From, var_To); -} -private pattern twoParam_mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_linkAllowed(var_From, var_To) { - find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_linkAllowed(_,_,var_From, var_To); -} -private pattern twoParam_currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_linkAllowed(var_From, var_To) { - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_linkAllowed(_,_,var_From, var_To); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries matchingAntenna -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingAntenna( - problem:LogicProblem, interpretation:PartialInterpretation, - var_From, var_To) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_From); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_From,var_virtual0); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_FromSys); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_To,var_virtual1); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, var_ToSys); - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingCommSubsystem(problem,interpretation,var_FromSys,var_ToSys); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingAntenna( - problem:LogicProblem, interpretation:PartialInterpretation, - var_From, var_To) -{ - find interpretation(problem,interpretation); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_From); - find mayInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_From,var_virtual0); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mayEquivalent(problem, interpretation, var_virtual0, var_FromSys); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - find mayInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_To,var_virtual1); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_virtual1); - find mayEquivalent(problem, interpretation, var_virtual1, var_ToSys); - find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingCommSubsystem(problem,interpretation,var_FromSys,var_ToSys); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingAntenna( - problem:LogicProblem, interpretation:PartialInterpretation, - var_From, var_To) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_From); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_From); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_From,var_virtual0); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_FromSys); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_To); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_To,var_virtual1); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, var_ToSys); - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingCommSubsystem(problem,interpretation,var_FromSys,var_ToSys); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries matchingCommSubsystem -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingCommSubsystem( - problem:LogicProblem, interpretation:PartialInterpretation, - var_From, var_To) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_From); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,var_From); - find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,var_To); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_From); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mustInstanceOfXCommSubsystem_class(problem,interpretation,var_From); - find mustInstanceOfXCommSubsystem_class(problem,interpretation,var_To); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_From); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mustInstanceOfKaCommSubsystem_class(problem,interpretation,var_From); - find mustInstanceOfKaCommSubsystem_class(problem,interpretation,var_To); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingCommSubsystem( - problem:LogicProblem, interpretation:PartialInterpretation, - var_From, var_To) -{ - find interpretation(problem,interpretation); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_From); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mayInstanceOfUHFCommSubsystem_class(problem,interpretation,var_From); - find mayInstanceOfUHFCommSubsystem_class(problem,interpretation,var_To); -}or{ - find interpretation(problem,interpretation); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_From); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mayInstanceOfXCommSubsystem_class(problem,interpretation,var_From); - find mayInstanceOfXCommSubsystem_class(problem,interpretation,var_To); -}or{ - find interpretation(problem,interpretation); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_From); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mayInstanceOfKaCommSubsystem_class(problem,interpretation,var_From); - find mayInstanceOfKaCommSubsystem_class(problem,interpretation,var_To); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingCommSubsystem( - problem:LogicProblem, interpretation:PartialInterpretation, - var_From, var_To) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_From); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,var_From); - find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,var_To); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_From); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mustInstanceOfXCommSubsystem_class(problem,interpretation,var_From); - find mustInstanceOfXCommSubsystem_class(problem,interpretation,var_To); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_From); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_To); - // From is exported - // To is exported - find mustInstanceOfKaCommSubsystem_class(problem,interpretation,var_From); - find mustInstanceOfKaCommSubsystem_class(problem,interpretation,var_To); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries cubeSat3U -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSat3U( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCubeSat3U_class(problem,interpretation,var_Sat); - // Sat is exported - find mustInstanceOfCubeSat3U_class(problem,interpretation,var_Sat); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSat3U( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find interpretation(problem,interpretation); - find mayInstanceOfCubeSat3U_class(problem,interpretation,var_Sat); - // Sat is exported - find mayInstanceOfCubeSat3U_class(problem,interpretation,var_Sat); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSat3U( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCubeSat3U_class(problem,interpretation,var_Sat); - // Sat is exported - find mustInstanceOfCubeSat3U_class(problem,interpretation,var_Sat); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries cubeSat6U -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSat6U( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCubeSat6U_class(problem,interpretation,var_Sat); - // Sat is exported - find mustInstanceOfCubeSat6U_class(problem,interpretation,var_Sat); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSat6U( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find interpretation(problem,interpretation); - find mayInstanceOfCubeSat6U_class(problem,interpretation,var_Sat); - // Sat is exported - find mayInstanceOfCubeSat6U_class(problem,interpretation,var_Sat); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSat6U( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCubeSat6U_class(problem,interpretation,var_Sat); - // Sat is exported - find mustInstanceOfCubeSat6U_class(problem,interpretation,var_Sat); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries communicationLoop -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLoop( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Element) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Element); - // Element is exported - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectCommunicationLink(problem,interpretation,var_Element,var_Element); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLoop( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Element) -{ - find interpretation(problem,interpretation); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Element); - // Element is exported - find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectCommunicationLink(problem,interpretation,var_Element,var_Element); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLoop( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Element) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Element); - // Element is exported - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectCommunicationLink(problem,interpretation,var_Element,var_Element); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries indirectCommunicationLink -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectCommunicationLink( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Source, var_Target) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Source); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Target); - // Source is exported - // Target is exported - find twoParam_mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_directCommunicationLink+(var_Source,var_Target); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectCommunicationLink( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Source, var_Target) -{ - find interpretation(problem,interpretation); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Source); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Target); - // Source is exported - // Target is exported - find twoParam_mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_directCommunicationLink+(var_Source,var_Target); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_indirectCommunicationLink( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Source, var_Target) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Source); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Target); - // Source is exported - // Target is exported - find twoParam_currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_directCommunicationLink+(var_Source,var_Target); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries directCommunicationLink -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_directCommunicationLink( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Source, var_Target) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Source); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Target); - // Source is exported - // Target is exported - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_SourceSubsystem); - find mustInRelationtarget_reference_CommSubsystem(problem,interpretation,var_SourceSubsystem,var_virtual0); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_TargetSubsystem); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Source); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Source,var_virtual1); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, var_SourceSubsystem); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Target); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Target,var_virtual2); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual2); - find mustEquivalent(problem, interpretation, var_virtual2, var_TargetSubsystem); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_directCommunicationLink( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Source, var_Target) -{ - find interpretation(problem,interpretation); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Source); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Target); - // Source is exported - // Target is exported - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_SourceSubsystem); - find mayInRelationtarget_reference_CommSubsystem(problem,interpretation,var_SourceSubsystem,var_virtual0); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mayEquivalent(problem, interpretation, var_virtual0, var_TargetSubsystem); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Source); - find mayInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Source,var_virtual1); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_virtual1); - find mayEquivalent(problem, interpretation, var_virtual1, var_SourceSubsystem); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Target); - find mayInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Target,var_virtual2); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_virtual2); - find mayEquivalent(problem, interpretation, var_virtual2, var_TargetSubsystem); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_directCommunicationLink( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Source, var_Target) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Source); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Target); - // Source is exported - // Target is exported - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_SourceSubsystem); - find mustInRelationtarget_reference_CommSubsystem(problem,interpretation,var_SourceSubsystem,var_virtual0); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_TargetSubsystem); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Source); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Source,var_virtual1); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, var_SourceSubsystem); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Target); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Target,var_virtual2); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual2); - find mustEquivalent(problem, interpretation, var_virtual2, var_TargetSubsystem); -} -private pattern twoParam_mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_directCommunicationLink(var_Source, var_Target) { - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_directCommunicationLink(_,_,var_Source, var_Target); -} -private pattern twoParam_mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_directCommunicationLink(var_Source, var_Target) { - find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_directCommunicationLink(_,_,var_Source, var_Target); -} -private pattern twoParam_currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_directCommunicationLink(var_Source, var_Target) { - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_directCommunicationLink(_,_,var_Source, var_Target); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries incompatibleSourceAndTargetBand -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_incompatibleSourceAndTargetBand( - problem:LogicProblem, interpretation:PartialInterpretation, - var_SourceSubsystem) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_SourceSubsystem); - // SourceSubsystem is exported - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_SourceSubsystem); - find mustInRelationtarget_reference_CommSubsystem(problem,interpretation,var_SourceSubsystem,var_virtual0); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_TargetSubsystem); - neg find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingCommSubsystem(problem,interpretation,var_SourceSubsystem,var_TargetSubsystem); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_incompatibleSourceAndTargetBand( - problem:LogicProblem, interpretation:PartialInterpretation, - var_SourceSubsystem) -{ - find interpretation(problem,interpretation); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_SourceSubsystem); - // SourceSubsystem is exported - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_SourceSubsystem); - find mayInRelationtarget_reference_CommSubsystem(problem,interpretation,var_SourceSubsystem,var_virtual0); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mayEquivalent(problem, interpretation, var_virtual0, var_TargetSubsystem); - neg find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingCommSubsystem(problem,interpretation,var_SourceSubsystem,var_TargetSubsystem); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_incompatibleSourceAndTargetBand( - problem:LogicProblem, interpretation:PartialInterpretation, - var_SourceSubsystem) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_SourceSubsystem); - // SourceSubsystem is exported - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_SourceSubsystem); - find mustInRelationtarget_reference_CommSubsystem(problem,interpretation,var_SourceSubsystem,var_virtual0); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_TargetSubsystem); - neg find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_matchingCommSubsystem(problem,interpretation,var_SourceSubsystem,var_TargetSubsystem); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries threeUCubeSatWithNonUhfCrossLink -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_threeUCubeSatWithNonUhfCrossLink( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCubeSat3U_class(problem,interpretation,var_Sat); - // Sat is exported - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Sat); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Sat,var_virtual0); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_SourceComm); - neg find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_commSubsystemBandUhf(problem,interpretation,var_SourceComm); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_SourceComm); - find mustInRelationtarget_reference_CommSubsystem(problem,interpretation,var_SourceComm,var_virtual1); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, var_TargetComm); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Target); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Target,var_virtual2); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual2); - find mustEquivalent(problem, interpretation, var_virtual2, var_TargetComm); - neg find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_groundStationNetwork(problem,interpretation,var_Target); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_threeUCubeSatWithNonUhfCrossLink( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find interpretation(problem,interpretation); - find mayInstanceOfCubeSat3U_class(problem,interpretation,var_Sat); - // Sat is exported - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Sat); - find mayInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Sat,var_virtual0); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mayEquivalent(problem, interpretation, var_virtual0, var_SourceComm); - neg find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_commSubsystemBandUhf(problem,interpretation,var_SourceComm); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_SourceComm); - find mayInRelationtarget_reference_CommSubsystem(problem,interpretation,var_SourceComm,var_virtual1); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_virtual1); - find mayEquivalent(problem, interpretation, var_virtual1, var_TargetComm); - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Target); - find mayInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Target,var_virtual2); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_virtual2); - find mayEquivalent(problem, interpretation, var_virtual2, var_TargetComm); - neg find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_groundStationNetwork(problem,interpretation,var_Target); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_threeUCubeSatWithNonUhfCrossLink( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find interpretation(problem,interpretation); - find mustInstanceOfCubeSat3U_class(problem,interpretation,var_Sat); - // Sat is exported - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Sat); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Sat,var_virtual0); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_SourceComm); - neg find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_commSubsystemBandUhf(problem,interpretation,var_SourceComm); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_SourceComm); - find mustInRelationtarget_reference_CommSubsystem(problem,interpretation,var_SourceComm,var_virtual1); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual1); - find mustEquivalent(problem, interpretation, var_virtual1, var_TargetComm); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Target); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Target,var_virtual2); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual2); - find mustEquivalent(problem, interpretation, var_virtual2, var_TargetComm); - neg find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_groundStationNetwork(problem,interpretation,var_Target); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries commSubsystemBandUhf -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_commSubsystemBandUhf( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Comm) -{ - find interpretation(problem,interpretation); - find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,var_Comm); - // Comm is exported - find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,var_Comm); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_commSubsystemBandUhf( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Comm) -{ - find interpretation(problem,interpretation); - find mayInstanceOfUHFCommSubsystem_class(problem,interpretation,var_Comm); - // Comm is exported - find mayInstanceOfUHFCommSubsystem_class(problem,interpretation,var_Comm); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_commSubsystemBandUhf( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Comm) -{ - find interpretation(problem,interpretation); - find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,var_Comm); - // Comm is exported - find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,var_Comm); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries groundStationNetwork -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_groundStationNetwork( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Network) -{ - find interpretation(problem,interpretation); - find mustInstanceOfGroundStationNetwork_class(problem,interpretation,var_Network); - // Network is exported - find mustInstanceOfGroundStationNetwork_class(problem,interpretation,var_Network); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_groundStationNetwork( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Network) -{ - find interpretation(problem,interpretation); - find mayInstanceOfGroundStationNetwork_class(problem,interpretation,var_Network); - // Network is exported - find mayInstanceOfGroundStationNetwork_class(problem,interpretation,var_Network); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_groundStationNetwork( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Network) -{ - find interpretation(problem,interpretation); - find mustInstanceOfGroundStationNetwork_class(problem,interpretation,var_Network); - // Network is exported - find mustInstanceOfGroundStationNetwork_class(problem,interpretation,var_Network); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries cubeSatWithKaAntenna -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSatWithKaAntenna( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - // Spacecraft is exported - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Spacecraft); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Spacecraft,var_virtual0); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_Comm); - find mustInstanceOfKaCommSubsystem_class(problem,interpretation,var_Comm); - neg find mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_smallSat(problem,interpretation,var_Spacecraft); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSatWithKaAntenna( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find interpretation(problem,interpretation); - find mayInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - // Spacecraft is exported - find mayInstanceOfCommunicatingElement_class(problem,interpretation,var_Spacecraft); - find mayInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Spacecraft,var_virtual0); - find mayInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mayEquivalent(problem, interpretation, var_virtual0, var_Comm); - find mayInstanceOfKaCommSubsystem_class(problem,interpretation,var_Comm); - neg find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_smallSat(problem,interpretation,var_Spacecraft); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSatWithKaAntenna( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,var_Spacecraft); - // Spacecraft is exported - find mustInstanceOfCommunicatingElement_class(problem,interpretation,var_Spacecraft); - find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,var_Spacecraft,var_virtual0); - find mustInstanceOfCommSubsystem_class(problem,interpretation,var_virtual0); - find mustEquivalent(problem, interpretation, var_virtual0, var_Comm); - find mustInstanceOfKaCommSubsystem_class(problem,interpretation,var_Comm); - neg find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_smallSat(problem,interpretation,var_Spacecraft); -} -// Must, May and Current queries for pattern hu bme mit inf dslreasoner domains satellite queries smallSat -private pattern mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_smallSat( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSmallSat_class(problem,interpretation,var_Sat); - // Sat is exported - find mustInstanceOfSmallSat_class(problem,interpretation,var_Sat); -} -private pattern mayInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_smallSat( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find interpretation(problem,interpretation); - find mayInstanceOfSmallSat_class(problem,interpretation,var_Sat); - // Sat is exported - find mayInstanceOfSmallSat_class(problem,interpretation,var_Sat); -} -private pattern currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_smallSat( - problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find interpretation(problem,interpretation); - find mustInstanceOfSmallSat_class(problem,interpretation,var_Sat); - // Sat is exported - find mustInstanceOfSmallSat_class(problem,interpretation,var_Sat); -} - -////////// -// 1.4 Containment Indexer -////////// -private pattern mustContains2(source: DefinedElement, target: DefinedElement) { - find mustContains4(_,_,source,target); -} - -private pattern mustContains4(problem:LogicProblem, interpretation:PartialInterpretation, - source: DefinedElement, target: DefinedElement) - { find mustInRelationgroundStationNetwork_reference_ConstellationMission(problem,interpretation,source,target); }or - - { find mustInRelationspacecraft_reference_ConstellationMission(problem,interpretation,source,target); }or - - { find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,source,target); }or - - { find mustInRelationpayload_reference_Spacecraft(problem,interpretation,source,target); } - -private pattern mustTransitiveContains(source,target) { - find mustContains2+(source,target); -} - -////////// -// 2. Invalidation Indexers -////////// -// 2.1 Invalidated by WF Queries -////////// -pattern invalidatedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLinkDoesNotStartAtContainingElement(problem:LogicProblem, interpretation:PartialInterpretation, - var_Element) -{ - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLinkDoesNotStartAtContainingElement(problem,interpretation,var_Element); -} -pattern invalidatedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_notEnoughInterferometryPayloads(problem:LogicProblem, interpretation:PartialInterpretation, - var_Mission) -{ - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_notEnoughInterferometryPayloads(problem,interpretation,var_Mission); -} -pattern invalidatedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noLinkToGroundStation(problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noLinkToGroundStation(problem,interpretation,var_Spacecraft); -} -pattern invalidatedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noPotentialLinkToGroundStation(problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noPotentialLinkToGroundStation(problem,interpretation,var_Spacecraft); -} -pattern invalidatedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLoop(problem:LogicProblem, interpretation:PartialInterpretation, - var_Element) -{ - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLoop(problem,interpretation,var_Element); -} -pattern invalidatedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_incompatibleSourceAndTargetBand(problem:LogicProblem, interpretation:PartialInterpretation, - var_SourceSubsystem) -{ - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_incompatibleSourceAndTargetBand(problem,interpretation,var_SourceSubsystem); -} -pattern invalidatedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_threeUCubeSatWithNonUhfCrossLink(problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_threeUCubeSatWithNonUhfCrossLink(problem,interpretation,var_Sat); -} -pattern invalidatedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSatWithKaAntenna(problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find mustInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSatWithKaAntenna(problem,interpretation,var_Spacecraft); -} - -////////// -// 3. Unfinishedness Indexers -////////// -// 3.1 Unfinishedness Measured by Multiplicity -////////// -pattern unfinishedLowerMultiplicity_groundStationNetwork_reference_ConstellationMission(problem:LogicProblem, interpretation:PartialInterpretation, relationIterpretation:PartialRelationInterpretation, object:DefinedElement,missingMultiplicity) { - find interpretation(problem,interpretation); - PartialInterpretation.partialrelationinterpretation(interpretation,relationIterpretation); - PartialRelationInterpretation.interpretationOf.name(relationIterpretation,"groundStationNetwork reference ConstellationMission"); - find mustInstanceOfConstellationMission_class(problem,interpretation,object); - numberOfExistingReferences == count find mustInRelationgroundStationNetwork_reference_ConstellationMission(problem,interpretation,object,_); - check(numberOfExistingReferences < 1); - missingMultiplicity == eval(1-numberOfExistingReferences); -} -pattern unfinishedLowerMultiplicity_spacecraft_reference_ConstellationMission(problem:LogicProblem, interpretation:PartialInterpretation, relationIterpretation:PartialRelationInterpretation, object:DefinedElement,missingMultiplicity) { - find interpretation(problem,interpretation); - PartialInterpretation.partialrelationinterpretation(interpretation,relationIterpretation); - PartialRelationInterpretation.interpretationOf.name(relationIterpretation,"spacecraft reference ConstellationMission"); - find mustInstanceOfConstellationMission_class(problem,interpretation,object); - numberOfExistingReferences == count find mustInRelationspacecraft_reference_ConstellationMission(problem,interpretation,object,_); - check(numberOfExistingReferences < 2); - missingMultiplicity == eval(2-numberOfExistingReferences); -} -pattern unfinishedLowerMultiplicity_commSubsystem_reference_CommunicatingElement(problem:LogicProblem, interpretation:PartialInterpretation, relationIterpretation:PartialRelationInterpretation, object:DefinedElement,missingMultiplicity) { - find interpretation(problem,interpretation); - PartialInterpretation.partialrelationinterpretation(interpretation,relationIterpretation); - PartialRelationInterpretation.interpretationOf.name(relationIterpretation,"commSubsystem reference CommunicatingElement"); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,object); - numberOfExistingReferences == count find mustInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,object,_); - check(numberOfExistingReferences < 1); - missingMultiplicity == eval(1-numberOfExistingReferences); -} - -////////// -// 3.2 Unfinishedness Measured by WF Queries -////////// -pattern unfinishedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLinkDoesNotStartAtContainingElement(problem:LogicProblem, interpretation:PartialInterpretation, - var_Element) -{ - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLinkDoesNotStartAtContainingElement(problem,interpretation,var_Element); -} -pattern unfinishedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_notEnoughInterferometryPayloads(problem:LogicProblem, interpretation:PartialInterpretation, - var_Mission) -{ - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_notEnoughInterferometryPayloads(problem,interpretation,var_Mission); -} -pattern unfinishedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noLinkToGroundStation(problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noLinkToGroundStation(problem,interpretation,var_Spacecraft); -} -pattern unfinishedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noPotentialLinkToGroundStation(problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_noPotentialLinkToGroundStation(problem,interpretation,var_Spacecraft); -} -pattern unfinishedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLoop(problem:LogicProblem, interpretation:PartialInterpretation, - var_Element) -{ - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_communicationLoop(problem,interpretation,var_Element); -} -pattern unfinishedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_incompatibleSourceAndTargetBand(problem:LogicProblem, interpretation:PartialInterpretation, - var_SourceSubsystem) -{ - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_incompatibleSourceAndTargetBand(problem,interpretation,var_SourceSubsystem); -} -pattern unfinishedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_threeUCubeSatWithNonUhfCrossLink(problem:LogicProblem, interpretation:PartialInterpretation, - var_Sat) -{ - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_threeUCubeSatWithNonUhfCrossLink(problem,interpretation,var_Sat); -} -pattern unfinishedBy_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSatWithKaAntenna(problem:LogicProblem, interpretation:PartialInterpretation, - var_Spacecraft) -{ - find currentInRelation_pattern_hu_bme_mit_inf_dslreasoner_domains_satellite_queries_cubeSatWithKaAntenna(problem,interpretation,var_Spacecraft); -} - -////////// -// 4. Refinement Indexers -////////// -// 4.1 Object constructors -////////// -private pattern hasElementInContainment(problem:LogicProblem, interpretation:PartialInterpretation) -{ - find interpretation(problem,interpretation); - find mustInstanceOfInterferometryMission_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfPayload_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfKaCommSubsystem_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfSpacecraft_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCommSubsystem_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfInterferometryPayload_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCubeSat6U_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfXCommSubsystem_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfGroundStationNetwork_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfConstellationMission_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCubeSat3U_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCubeSat_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfSmallSat_class(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfConstellationMission_class_DefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfConstellationMission_class_UndefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfInterferometryMission_class_DefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfInterferometryMission_class_UndefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class_DefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCommunicatingElement_class_UndefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfGroundStationNetwork_class_DefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfGroundStationNetwork_class_UndefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCommSubsystem_class_DefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfXCommSubsystem_class_DefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfXCommSubsystem_class_UndefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfKaCommSubsystem_class_DefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -}or{ - find interpretation(problem,interpretation); - find mustInstanceOfKaCommSubsystem_class_UndefinedPart(problem,interpretation,root); - find mustExist(problem, interpretation, root); -} -pattern createObject_KaCommSubsystem_class_UndefinedPart_by_commSubsystem_reference_CommunicatingElement( - problem:LogicProblem, interpretation:PartialInterpretation, - relationInterpretation:PartialRelationInterpretation, typeInterpretation:PartialComplexTypeInterpretation, - container:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"KaCommSubsystem class UndefinedPart"); - PartialInterpretation.partialrelationinterpretation(interpretation,relationInterpretation); - PartialRelationInterpretation.interpretationOf.name(relationInterpretation,"commSubsystem reference CommunicatingElement"); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,container); - find mayInstanceOfKaCommSubsystem_class_UndefinedPart(problem,interpretation,newObject); - find mayInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,container,newObject); - find mustExist(problem, interpretation, container); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_KaCommSubsystem_class_UndefinedPart( - problem:LogicProblem, interpretation:PartialInterpretation, - typeInterpretation:PartialComplexTypeInterpretation) -{ - find interpretation(problem,interpretation); - neg find hasElementInContainment(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"KaCommSubsystem class UndefinedPart"); - find mayInstanceOfKaCommSubsystem_class_UndefinedPart(problem,interpretation,newObject); - find mayExist(problem, interpretation, newObject); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_GroundStationNetwork_class_UndefinedPart_by_groundStationNetwork_reference_ConstellationMission( - problem:LogicProblem, interpretation:PartialInterpretation, - relationInterpretation:PartialRelationInterpretation, typeInterpretation:PartialComplexTypeInterpretation, - container:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"GroundStationNetwork class UndefinedPart"); - PartialInterpretation.partialrelationinterpretation(interpretation,relationInterpretation); - PartialRelationInterpretation.interpretationOf.name(relationInterpretation,"groundStationNetwork reference ConstellationMission"); - find mustInstanceOfConstellationMission_class(problem,interpretation,container); - find mayInstanceOfGroundStationNetwork_class_UndefinedPart(problem,interpretation,newObject); - find mayInRelationgroundStationNetwork_reference_ConstellationMission(problem,interpretation,container,newObject); - find mustExist(problem, interpretation, container); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_GroundStationNetwork_class_UndefinedPart( - problem:LogicProblem, interpretation:PartialInterpretation, - typeInterpretation:PartialComplexTypeInterpretation) -{ - find interpretation(problem,interpretation); - neg find hasElementInContainment(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"GroundStationNetwork class UndefinedPart"); - find mayInstanceOfGroundStationNetwork_class_UndefinedPart(problem,interpretation,newObject); - find mayExist(problem, interpretation, newObject); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_SmallSat_class_by_spacecraft_reference_ConstellationMission( - problem:LogicProblem, interpretation:PartialInterpretation, - relationInterpretation:PartialRelationInterpretation, typeInterpretation:PartialComplexTypeInterpretation, - container:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"SmallSat class"); - PartialInterpretation.partialrelationinterpretation(interpretation,relationInterpretation); - PartialRelationInterpretation.interpretationOf.name(relationInterpretation,"spacecraft reference ConstellationMission"); - find mustInstanceOfConstellationMission_class(problem,interpretation,container); - find mayInstanceOfSmallSat_class(problem,interpretation,newObject); - find mayInRelationspacecraft_reference_ConstellationMission(problem,interpretation,container,newObject); - find mustExist(problem, interpretation, container); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_SmallSat_class( - problem:LogicProblem, interpretation:PartialInterpretation, - typeInterpretation:PartialComplexTypeInterpretation) -{ - find interpretation(problem,interpretation); - neg find hasElementInContainment(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"SmallSat class"); - find mayInstanceOfSmallSat_class(problem,interpretation,newObject); - find mayExist(problem, interpretation, newObject); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_XCommSubsystem_class_UndefinedPart_by_commSubsystem_reference_CommunicatingElement( - problem:LogicProblem, interpretation:PartialInterpretation, - relationInterpretation:PartialRelationInterpretation, typeInterpretation:PartialComplexTypeInterpretation, - container:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"XCommSubsystem class UndefinedPart"); - PartialInterpretation.partialrelationinterpretation(interpretation,relationInterpretation); - PartialRelationInterpretation.interpretationOf.name(relationInterpretation,"commSubsystem reference CommunicatingElement"); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,container); - find mayInstanceOfXCommSubsystem_class_UndefinedPart(problem,interpretation,newObject); - find mayInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,container,newObject); - find mustExist(problem, interpretation, container); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_XCommSubsystem_class_UndefinedPart( - problem:LogicProblem, interpretation:PartialInterpretation, - typeInterpretation:PartialComplexTypeInterpretation) -{ - find interpretation(problem,interpretation); - neg find hasElementInContainment(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"XCommSubsystem class UndefinedPart"); - find mayInstanceOfXCommSubsystem_class_UndefinedPart(problem,interpretation,newObject); - find mayExist(problem, interpretation, newObject); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_UHFCommSubsystem_class_by_commSubsystem_reference_CommunicatingElement( - problem:LogicProblem, interpretation:PartialInterpretation, - relationInterpretation:PartialRelationInterpretation, typeInterpretation:PartialComplexTypeInterpretation, - container:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"UHFCommSubsystem class"); - PartialInterpretation.partialrelationinterpretation(interpretation,relationInterpretation); - PartialRelationInterpretation.interpretationOf.name(relationInterpretation,"commSubsystem reference CommunicatingElement"); - find mustInstanceOfCommunicatingElement_class(problem,interpretation,container); - find mayInstanceOfUHFCommSubsystem_class(problem,interpretation,newObject); - find mayInRelationcommSubsystem_reference_CommunicatingElement(problem,interpretation,container,newObject); - find mustExist(problem, interpretation, container); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_UHFCommSubsystem_class( - problem:LogicProblem, interpretation:PartialInterpretation, - typeInterpretation:PartialComplexTypeInterpretation) -{ - find interpretation(problem,interpretation); - neg find hasElementInContainment(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"UHFCommSubsystem class"); - find mayInstanceOfUHFCommSubsystem_class(problem,interpretation,newObject); - find mayExist(problem, interpretation, newObject); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_CubeSat6U_class_by_spacecraft_reference_ConstellationMission( - problem:LogicProblem, interpretation:PartialInterpretation, - relationInterpretation:PartialRelationInterpretation, typeInterpretation:PartialComplexTypeInterpretation, - container:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"CubeSat6U class"); - PartialInterpretation.partialrelationinterpretation(interpretation,relationInterpretation); - PartialRelationInterpretation.interpretationOf.name(relationInterpretation,"spacecraft reference ConstellationMission"); - find mustInstanceOfConstellationMission_class(problem,interpretation,container); - find mayInstanceOfCubeSat6U_class(problem,interpretation,newObject); - find mayInRelationspacecraft_reference_ConstellationMission(problem,interpretation,container,newObject); - find mustExist(problem, interpretation, container); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_CubeSat6U_class( - problem:LogicProblem, interpretation:PartialInterpretation, - typeInterpretation:PartialComplexTypeInterpretation) -{ - find interpretation(problem,interpretation); - neg find hasElementInContainment(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"CubeSat6U class"); - find mayInstanceOfCubeSat6U_class(problem,interpretation,newObject); - find mayExist(problem, interpretation, newObject); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_CubeSat3U_class_by_spacecraft_reference_ConstellationMission( - problem:LogicProblem, interpretation:PartialInterpretation, - relationInterpretation:PartialRelationInterpretation, typeInterpretation:PartialComplexTypeInterpretation, - container:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"CubeSat3U class"); - PartialInterpretation.partialrelationinterpretation(interpretation,relationInterpretation); - PartialRelationInterpretation.interpretationOf.name(relationInterpretation,"spacecraft reference ConstellationMission"); - find mustInstanceOfConstellationMission_class(problem,interpretation,container); - find mayInstanceOfCubeSat3U_class(problem,interpretation,newObject); - find mayInRelationspacecraft_reference_ConstellationMission(problem,interpretation,container,newObject); - find mustExist(problem, interpretation, container); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_CubeSat3U_class( - problem:LogicProblem, interpretation:PartialInterpretation, - typeInterpretation:PartialComplexTypeInterpretation) -{ - find interpretation(problem,interpretation); - neg find hasElementInContainment(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"CubeSat3U class"); - find mayInstanceOfCubeSat3U_class(problem,interpretation,newObject); - find mayExist(problem, interpretation, newObject); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_InterferometryMission_class_UndefinedPart( - problem:LogicProblem, interpretation:PartialInterpretation, - typeInterpretation:PartialComplexTypeInterpretation) -{ - find interpretation(problem,interpretation); - neg find hasElementInContainment(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"InterferometryMission class UndefinedPart"); - find mayInstanceOfInterferometryMission_class_UndefinedPart(problem,interpretation,newObject); - find mayExist(problem, interpretation, newObject); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_InterferometryPayload_class_by_payload_reference_Spacecraft( - problem:LogicProblem, interpretation:PartialInterpretation, - relationInterpretation:PartialRelationInterpretation, typeInterpretation:PartialComplexTypeInterpretation, - container:DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"InterferometryPayload class"); - PartialInterpretation.partialrelationinterpretation(interpretation,relationInterpretation); - PartialRelationInterpretation.interpretationOf.name(relationInterpretation,"payload reference Spacecraft"); - find mustInstanceOfSpacecraft_class(problem,interpretation,container); - find mayInstanceOfInterferometryPayload_class(problem,interpretation,newObject); - find mayInRelationpayload_reference_Spacecraft(problem,interpretation,container,newObject); - find mustExist(problem, interpretation, container); - neg find mustExist(problem, interpretation, newObject); -} -pattern createObject_InterferometryPayload_class( - problem:LogicProblem, interpretation:PartialInterpretation, - typeInterpretation:PartialComplexTypeInterpretation) -{ - find interpretation(problem,interpretation); - neg find hasElementInContainment(problem,interpretation); - PartialInterpretation.partialtypeinterpratation(interpretation,typeInterpretation); - PartialComplexTypeInterpretation.interpretationOf.name(typeInterpretation,"InterferometryPayload class"); - find mayInstanceOfInterferometryPayload_class(problem,interpretation,newObject); - find mayExist(problem, interpretation, newObject); - neg find mustExist(problem, interpretation, newObject); -} - -////////// -// 4.2 Type refinement -////////// -pattern refineTypeTo_KaCommSubsystem_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element: DefinedElement) { - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - find mayInstanceOfKaCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); -} -pattern refineTypeTo_GroundStationNetwork_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element: DefinedElement) { - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - find mayInstanceOfGroundStationNetwork_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfSpacecraft_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); -} -pattern refineTypeTo_SmallSat_class(problem:LogicProblem, interpretation:PartialInterpretation, element: DefinedElement) { - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - find mayInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); -} -pattern refineTypeTo_XCommSubsystem_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element: DefinedElement) { - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - find mayInstanceOfXCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); -} -pattern refineTypeTo_UHFCommSubsystem_class(problem:LogicProblem, interpretation:PartialInterpretation, element: DefinedElement) { - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - find mayInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); -} -pattern refineTypeTo_CubeSat6U_class(problem:LogicProblem, interpretation:PartialInterpretation, element: DefinedElement) { - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - find mayInstanceOfCubeSat6U_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat6U_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat3U_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); -} -pattern refineTypeTo_CubeSat3U_class(problem:LogicProblem, interpretation:PartialInterpretation, element: DefinedElement) { - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - find mayInstanceOfCubeSat3U_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat6U_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat3U_class(problem,interpretation,element); -} -pattern refineTypeTo_InterferometryMission_class_UndefinedPart(problem:LogicProblem, interpretation:PartialInterpretation, element: DefinedElement) { - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - find mayInstanceOfInterferometryMission_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfInterferometryMission_class_UndefinedPart(problem,interpretation,element); -} -pattern refineTypeTo_InterferometryPayload_class(problem:LogicProblem, interpretation:PartialInterpretation, element: DefinedElement) { - find interpretation(problem,interpretation); - PartialInterpretation.newElements(interpretation,element); - find mayInstanceOfInterferometryPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfInterferometryPayload_class(problem,interpretation,element); -} - -////////// -// 4.3 Relation refinement -////////// -pattern refineRelation_target_reference_CommSubsystem( - problem:LogicProblem, interpretation:PartialInterpretation, - relationIterpretation:PartialRelationInterpretation, - from: DefinedElement, to: DefinedElement) -{ - find interpretation(problem,interpretation); - PartialInterpretation.partialrelationinterpretation(interpretation,relationIterpretation); - PartialRelationInterpretation.interpretationOf.name(relationIterpretation,"target reference CommSubsystem"); - find mustExist(problem, interpretation, from); - find mustExist(problem, interpretation, to); - find mustInstanceOfCommSubsystem_class(problem,interpretation,from); - find mustInstanceOfCommSubsystem_class(problem,interpretation,to); - find mayInRelationtarget_reference_CommSubsystem(problem,interpretation,from,to); - neg find mustInRelationtarget_reference_CommSubsystem(problem,interpretation,from,to); -} - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/init.partialmodel b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/init.partialmodel deleted file mode 100644 index 9f14379f..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/init.partialmodel +++ /dev/null @@ -1,147 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/log.txt b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/log.txt index 67589bd9..1d3c9f62 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/log.txt +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/log.txt @@ -1 +1 @@ -Model generation finished +Model generation started diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/1.gml b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/1.gml deleted file mode 100644 index 01e93808..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/1.gml +++ /dev/null @@ -1,2453 +0,0 @@ -graph -[ - node - [ - id 0 - graphics - [ - w 315.70000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 1" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - ConstellationMission class DefinedPart - InterferometryMission class DefinedPart - ConstellationMission class - InterferometryMission class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 1 - graphics - [ - w 308.0 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 2" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class DefinedPart - GroundStationNetwork class DefinedPart - CommunicatingElement class - GroundStationNetwork class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 2 - graphics - [ - w 261.8 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 3" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class DefinedPart - XCommSubsystem class DefinedPart - CommSubsystem class - XCommSubsystem class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 3 - graphics - [ - w 269.5 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 4" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class DefinedPart - KaCommSubsystem class DefinedPart - CommSubsystem class - KaCommSubsystem class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 4 - graphics - [ - w 41.800000000000004 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "true" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 5 - graphics - [ - w 50.6 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "false" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 6 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 7 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 8 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 9 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 10 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 11 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 12 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 13 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 14 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 15 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 16 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 17 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 18 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 19 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 20 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 21 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 22 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 23 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 24 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 25 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 26 - graphics - [ - w 323.40000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - SmallSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 27 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 28 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 29 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 30 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 31 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 32 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 33 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 34 - graphics - [ - w 323.40000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - SmallSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 35 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 36 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 37 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 38 - graphics - [ - w 112.2 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Integers" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 39 - graphics - [ - w 85.80000000000001 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Reals" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 40 - graphics - [ - w 103.4 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Strings" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 41 - graphics - [ - w 103.4 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Objects" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - edge - [ - source 0 - target 1 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "groundStationNetwork reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 6 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 10 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 14 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 18 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 22 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 26 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 30 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 34 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 1 - target 2 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 1 - target 3 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 7 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 8 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 11 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 12 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 15 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 16 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 19 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 20 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 23 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 24 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 27 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 29 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 32 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 33 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 35 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 36 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 9 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 13 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 17 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 21 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 25 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 28 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 31 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 37 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 7 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 11 - target 8 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 15 - target 12 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 19 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 23 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 29 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 32 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 35 - target 15 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] -] - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/1.png b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/1.png deleted file mode 100644 index 01a1bfc5..00000000 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/1.png and /dev/null differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/1.xmi b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/1.xmi deleted file mode 100644 index 768c1d80..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/1.xmi +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/2.gml b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/2.gml deleted file mode 100644 index bac655eb..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/2.gml +++ /dev/null @@ -1,2453 +0,0 @@ -graph -[ - node - [ - id 0 - graphics - [ - w 315.70000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 1" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - ConstellationMission class DefinedPart - InterferometryMission class DefinedPart - ConstellationMission class - InterferometryMission class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 1 - graphics - [ - w 308.0 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 2" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class DefinedPart - GroundStationNetwork class DefinedPart - CommunicatingElement class - GroundStationNetwork class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 2 - graphics - [ - w 261.8 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 3" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class DefinedPart - XCommSubsystem class DefinedPart - CommSubsystem class - XCommSubsystem class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 3 - graphics - [ - w 269.5 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 4" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class DefinedPart - KaCommSubsystem class DefinedPart - CommSubsystem class - KaCommSubsystem class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 4 - graphics - [ - w 41.800000000000004 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "true" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 5 - graphics - [ - w 50.6 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "false" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 6 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 7 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 8 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 9 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 10 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 11 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 12 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 13 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 14 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 15 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 16 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 17 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 18 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 19 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 20 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 21 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 22 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 23 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 24 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 25 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 26 - graphics - [ - w 323.40000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - SmallSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 27 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 28 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 29 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 30 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 31 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 32 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 33 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 34 - graphics - [ - w 323.40000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - SmallSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 35 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 36 - graphics - [ - w 284.90000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - KaCommSubsystem class - CommSubsystem class UndefinedPart - KaCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 37 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 38 - graphics - [ - w 112.2 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Integers" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 39 - graphics - [ - w 85.80000000000001 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Reals" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 40 - graphics - [ - w 103.4 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Strings" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 41 - graphics - [ - w 103.4 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Objects" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - edge - [ - source 0 - target 1 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "groundStationNetwork reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 6 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 10 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 14 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 18 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 22 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 26 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 30 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 34 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 1 - target 2 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 1 - target 3 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 7 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 8 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 11 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 12 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 15 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 16 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 19 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 20 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 23 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 24 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 27 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 29 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 32 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 33 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 35 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 36 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 9 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 13 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 17 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 21 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 25 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 28 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 31 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 37 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 7 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 11 - target 8 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 15 - target 12 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 20 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 23 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 29 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 32 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 35 - target 15 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] -] - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/2.png b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/2.png deleted file mode 100644 index e00c6b69..00000000 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/2.png and /dev/null differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/2.xmi b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/2.xmi deleted file mode 100644 index d67908e4..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/2.xmi +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/3.gml b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/3.gml deleted file mode 100644 index 0e6ee88f..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/3.gml +++ /dev/null @@ -1,2452 +0,0 @@ -graph -[ - node - [ - id 0 - graphics - [ - w 315.70000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 1" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - ConstellationMission class DefinedPart - InterferometryMission class DefinedPart - ConstellationMission class - InterferometryMission class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 1 - graphics - [ - w 308.0 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 2" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class DefinedPart - GroundStationNetwork class DefinedPart - CommunicatingElement class - GroundStationNetwork class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 2 - graphics - [ - w 261.8 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 3" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class DefinedPart - XCommSubsystem class DefinedPart - CommSubsystem class - XCommSubsystem class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 3 - graphics - [ - w 269.5 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 4" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class DefinedPart - KaCommSubsystem class DefinedPart - CommSubsystem class - KaCommSubsystem class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 4 - graphics - [ - w 41.800000000000004 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "true" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 5 - graphics - [ - w 50.6 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "false" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 6 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 7 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 8 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 9 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 10 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 11 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 12 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 13 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 14 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 15 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 16 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 17 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 18 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 19 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 20 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 21 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 22 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 23 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 24 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 25 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 26 - graphics - [ - w 323.40000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - SmallSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 27 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 28 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 29 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 30 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 31 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 32 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 33 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 34 - graphics - [ - w 323.40000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - SmallSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 35 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 36 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 37 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 38 - graphics - [ - w 112.2 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Integers" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 39 - graphics - [ - w 85.80000000000001 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Reals" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 40 - graphics - [ - w 103.4 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Strings" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 41 - graphics - [ - w 103.4 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Objects" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - edge - [ - source 0 - target 1 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "groundStationNetwork reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 6 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 10 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 14 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 18 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 22 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 26 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 30 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 34 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 1 - target 2 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 1 - target 3 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 7 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 8 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 11 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 12 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 15 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 16 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 19 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 20 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 23 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 24 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 27 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 29 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 32 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 33 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 35 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 37 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 9 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 13 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 17 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 21 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 25 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 28 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 31 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 36 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 7 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 11 - target 8 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 15 - target 12 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 20 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 23 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 29 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 32 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 35 - target 15 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] -] - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/3.png b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/3.png deleted file mode 100644 index be6b7b8c..00000000 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/3.png and /dev/null differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/3.xmi b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/3.xmi deleted file mode 100644 index 72ac5fe8..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/3.xmi +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/4.gml b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/4.gml deleted file mode 100644 index ffc846cb..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/4.gml +++ /dev/null @@ -1,2452 +0,0 @@ -graph -[ - node - [ - id 0 - graphics - [ - w 315.70000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 1" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - ConstellationMission class DefinedPart - InterferometryMission class DefinedPart - ConstellationMission class - InterferometryMission class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 1 - graphics - [ - w 308.0 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 2" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class DefinedPart - GroundStationNetwork class DefinedPart - CommunicatingElement class - GroundStationNetwork class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 2 - graphics - [ - w 261.8 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 3" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class DefinedPart - XCommSubsystem class DefinedPart - CommSubsystem class - XCommSubsystem class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 3 - graphics - [ - w 269.5 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 4" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class DefinedPart - KaCommSubsystem class DefinedPart - CommSubsystem class - KaCommSubsystem class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 4 - graphics - [ - w 41.800000000000004 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "true" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 5 - graphics - [ - w 50.6 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "false" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 6 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 7 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 8 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 9 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 10 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 11 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 12 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 13 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 14 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 15 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 16 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 17 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 18 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 19 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 20 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 21 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 22 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 23 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 24 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 25 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 26 - graphics - [ - w 323.40000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - SmallSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 27 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 28 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 29 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 30 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 31 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 32 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 33 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 34 - graphics - [ - w 323.40000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - SmallSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 35 - graphics - [ - w 284.90000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - KaCommSubsystem class - CommSubsystem class UndefinedPart - KaCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 36 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 37 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 38 - graphics - [ - w 112.2 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Integers" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 39 - graphics - [ - w 85.80000000000001 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Reals" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 40 - graphics - [ - w 103.4 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Strings" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 41 - graphics - [ - w 103.4 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Objects" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - edge - [ - source 0 - target 1 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "groundStationNetwork reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 6 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 10 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 14 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 18 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 22 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 26 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 30 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 34 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 1 - target 2 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 1 - target 3 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 7 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 8 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 11 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 12 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 15 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 16 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 19 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 20 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 23 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 24 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 27 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 29 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 32 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 33 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 35 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 36 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 9 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 13 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 17 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 21 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 25 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 28 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 31 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 37 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 7 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 11 - target 8 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 15 - target 12 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 19 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 23 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 29 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 32 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 36 - target 11 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] -] - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/4.png b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/4.png deleted file mode 100644 index 36561a94..00000000 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/4.png and /dev/null differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/4.xmi b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/4.xmi deleted file mode 100644 index b3b122fa..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/4.xmi +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/5.gml b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/5.gml deleted file mode 100644 index ad569d2a..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/5.gml +++ /dev/null @@ -1,2452 +0,0 @@ -graph -[ - node - [ - id 0 - graphics - [ - w 315.70000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 1" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - ConstellationMission class DefinedPart - InterferometryMission class DefinedPart - ConstellationMission class - InterferometryMission class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 1 - graphics - [ - w 308.0 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 2" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class DefinedPart - GroundStationNetwork class DefinedPart - CommunicatingElement class - GroundStationNetwork class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 2 - graphics - [ - w 261.8 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 3" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class DefinedPart - XCommSubsystem class DefinedPart - CommSubsystem class - XCommSubsystem class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 3 - graphics - [ - w 269.5 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 4" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class DefinedPart - KaCommSubsystem class DefinedPart - CommSubsystem class - KaCommSubsystem class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 4 - graphics - [ - w 41.800000000000004 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "true" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 5 - graphics - [ - w 50.6 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "false" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 6 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 7 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 8 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 9 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 10 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 11 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 12 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 13 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 14 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 15 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 16 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 17 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 18 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 19 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 20 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 21 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 22 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 23 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 24 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 25 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 26 - graphics - [ - w 323.40000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - SmallSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 27 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 28 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 29 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 30 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 31 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 32 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 33 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 34 - graphics - [ - w 323.40000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - SmallSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 35 - graphics - [ - w 284.90000000000003 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - KaCommSubsystem class - CommSubsystem class UndefinedPart - KaCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 36 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 37 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 38 - graphics - [ - w 112.2 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Integers" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 39 - graphics - [ - w 85.80000000000001 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Reals" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 40 - graphics - [ - w 103.4 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Strings" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 41 - graphics - [ - w 103.4 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Objects" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - edge - [ - source 0 - target 1 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "groundStationNetwork reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 6 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 10 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 14 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 18 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 22 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 26 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 30 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 34 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 1 - target 2 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 1 - target 3 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 7 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 8 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 11 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 12 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 15 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 16 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 19 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 20 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 23 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 24 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 27 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 29 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 32 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 33 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 35 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 36 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 9 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 13 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 17 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 21 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 25 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 28 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 31 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 37 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 7 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 11 - target 8 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 15 - target 12 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 19 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 23 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 29 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 32 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 36 - target 16 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] -] - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/5.png b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/5.png deleted file mode 100644 index 70dfad68..00000000 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/5.png and /dev/null differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/5.xmi b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/5.xmi deleted file mode 100644 index 9b2a9ea1..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/5.xmi +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run1/1_1.gml b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run1/1_1.gml index de337fc2..68fc38e5 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run1/1_1.gml +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run1/1_1.gml @@ -270,8 +270,8 @@ graph id 7 graphics [ - w 269.5 - h 68 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -291,9 +291,8 @@ graph LabelGraphics [ text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -308,8 +307,8 @@ graph id 8 graphics [ - w 223.3 - h 54 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -329,8 +328,9 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + UHFCommSubsystem class + CommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -407,7 +407,7 @@ graph text " CommunicatingElement class Spacecraft class - CubeSat6U class + CubeSat3U class CubeSat class CommunicatingElement class UndefinedPart " @@ -577,8 +577,8 @@ graph id 15 graphics [ - w 277.20000000000005 - h 82 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -599,9 +599,8 @@ graph [ text " CommSubsystem class - XCommSubsystem class + UHFCommSubsystem class CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -616,8 +615,8 @@ graph id 16 graphics [ - w 223.3 - h 54 + w 284.90000000000003 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -637,8 +636,10 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + KaCommSubsystem class + CommSubsystem class UndefinedPart + KaCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -653,8 +654,8 @@ graph id 17 graphics [ - w 277.20000000000005 - h 82 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -674,10 +675,8 @@ graph LabelGraphics [ text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -715,7 +714,7 @@ graph text " CommunicatingElement class Spacecraft class - CubeSat3U class + CubeSat6U class CubeSat class CommunicatingElement class UndefinedPart " @@ -732,8 +731,8 @@ graph id 19 graphics [ - w 269.5 - h 68 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -754,8 +753,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -770,8 +770,8 @@ graph id 20 graphics [ - w 269.5 - h 68 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -792,8 +792,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -846,7 +847,7 @@ graph graphics [ w 323.40000000000003 - h 82 + h 96 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -868,7 +869,8 @@ graph text " CommunicatingElement class Spacecraft class - SmallSat class + CubeSat3U class + CubeSat class CommunicatingElement class UndefinedPart " fontSize 14 @@ -884,8 +886,8 @@ graph id 23 graphics [ - w 277.20000000000005 - h 82 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -906,9 +908,8 @@ graph [ text " CommSubsystem class - XCommSubsystem class + UHFCommSubsystem class CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1000,7 +1001,7 @@ graph graphics [ w 323.40000000000003 - h 82 + h 96 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1022,7 +1023,8 @@ graph text " CommunicatingElement class Spacecraft class - SmallSat class + CubeSat3U class + CubeSat class CommunicatingElement class UndefinedPart " fontSize 14 @@ -1038,8 +1040,8 @@ graph id 27 graphics [ - w 277.20000000000005 - h 82 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1060,9 +1062,8 @@ graph [ text " CommSubsystem class - XCommSubsystem class + UHFCommSubsystem class CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1077,8 +1078,8 @@ graph id 28 graphics [ - w 223.3 - h 54 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1098,8 +1099,10 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + XCommSubsystem class + CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1114,8 +1117,8 @@ graph id 29 graphics [ - w 284.90000000000003 - h 82 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1135,10 +1138,8 @@ graph LabelGraphics [ text " - CommSubsystem class - KaCommSubsystem class - CommSubsystem class UndefinedPart - KaCommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -1193,8 +1194,8 @@ graph id 31 graphics [ - w 269.5 - h 68 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1214,9 +1215,8 @@ graph LabelGraphics [ text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -1231,8 +1231,8 @@ graph id 32 graphics [ - w 223.3 - h 54 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1252,8 +1252,9 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + UHFCommSubsystem class + CommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1268,8 +1269,8 @@ graph id 33 graphics [ - w 269.5 - h 68 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1290,8 +1291,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1345,7 +1347,7 @@ graph id 35 graphics [ - w 277.20000000000005 + w 284.90000000000003 h 82 type "rectangle" fill "#FFFFFF" @@ -1367,9 +1369,9 @@ graph [ text " CommSubsystem class - XCommSubsystem class + KaCommSubsystem class CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart + KaCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1421,7 +1423,7 @@ graph id 37 graphics [ - w 284.90000000000003 + w 277.20000000000005 h 82 type "rectangle" fill "#FFFFFF" @@ -1443,9 +1445,9 @@ graph [ text " CommSubsystem class - KaCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart - KaCommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1817,7 +1819,7 @@ graph edge [ source 6 - target 7 + target 8 graphics [ fill "#000000" @@ -1917,7 +1919,7 @@ graph edge [ source 14 - target 17 + target 16 graphics [ fill "#000000" @@ -2037,7 +2039,7 @@ graph edge [ source 26 - target 29 + target 28 graphics [ fill "#000000" @@ -2057,7 +2059,7 @@ graph edge [ source 30 - target 31 + target 32 graphics [ fill "#000000" @@ -2137,7 +2139,7 @@ graph edge [ source 6 - target 8 + target 7 graphics [ fill "#000000" @@ -2177,7 +2179,7 @@ graph edge [ source 14 - target 16 + target 17 graphics [ fill "#000000" @@ -2237,7 +2239,7 @@ graph edge [ source 26 - target 28 + target 29 graphics [ fill "#000000" @@ -2257,7 +2259,7 @@ graph edge [ source 30 - target 32 + target 31 graphics [ fill "#000000" @@ -2315,8 +2317,8 @@ graph ] edge [ - source 11 - target 2 + source 12 + target 8 graphics [ fill "#000000" @@ -2334,8 +2336,8 @@ graph ] edge [ - source 15 - target 9 + source 16 + target 3 graphics [ fill "#000000" @@ -2353,8 +2355,8 @@ graph ] edge [ - source 20 - target 7 + source 19 + target 9 graphics [ fill "#000000" @@ -2373,7 +2375,7 @@ graph edge [ source 23 - target 15 + target 12 graphics [ fill "#000000" @@ -2392,7 +2394,7 @@ graph edge [ source 27 - target 24 + target 15 graphics [ fill "#000000" @@ -2410,8 +2412,8 @@ graph ] edge [ - source 31 - target 19 + source 32 + target 15 graphics [ fill "#000000" @@ -2430,7 +2432,7 @@ graph edge [ source 35 - target 2 + target 16 graphics [ fill "#000000" diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run1/1_1.png b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run1/1_1.png index 5585b413..7484e249 100644 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run1/1_1.png and b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run1/1_1.png differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run1/1_1.xmi b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run1/1_1.xmi index 5f4f1251..ba3eec9b 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run1/1_1.xmi +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run1/1_1.xmi @@ -4,44 +4,44 @@ - - - + + + - - - + + + - + - + - - + + - - + + - - + + - - - + + + - - - + + + diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run2/2_1.gml b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run2/2_1.gml index 8520105c..00045cb3 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run2/2_1.gml +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run2/2_1.gml @@ -308,8 +308,8 @@ graph id 8 graphics [ - w 223.3 - h 54 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -329,8 +329,9 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + UHFCommSubsystem class + CommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -345,8 +346,8 @@ graph id 9 graphics [ - w 284.90000000000003 - h 82 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -366,10 +367,8 @@ graph LabelGraphics [ text " - CommSubsystem class - KaCommSubsystem class - CommSubsystem class UndefinedPart - KaCommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -385,7 +384,7 @@ graph graphics [ w 323.40000000000003 - h 96 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -407,8 +406,7 @@ graph text " CommunicatingElement class Spacecraft class - CubeSat3U class - CubeSat class + SmallSat class CommunicatingElement class UndefinedPart " fontSize 14 @@ -424,8 +422,8 @@ graph id 11 graphics [ - w 269.5 - h 68 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -446,8 +444,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -462,8 +461,8 @@ graph id 12 graphics [ - w 269.5 - h 68 + w 284.90000000000003 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -484,8 +483,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + KaCommSubsystem class CommSubsystem class UndefinedPart + KaCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -560,7 +560,7 @@ graph text " CommunicatingElement class Spacecraft class - CubeSat3U class + CubeSat6U class CubeSat class CommunicatingElement class UndefinedPart " @@ -577,8 +577,8 @@ graph id 15 graphics [ - w 223.3 - h 54 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -598,8 +598,10 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + XCommSubsystem class + CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -614,8 +616,8 @@ graph id 16 graphics [ - w 277.20000000000005 - h 82 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -635,10 +637,8 @@ graph LabelGraphics [ text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -731,8 +731,8 @@ graph id 19 graphics [ - w 277.20000000000005 - h 82 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -753,9 +753,8 @@ graph [ text " CommSubsystem class - XCommSubsystem class + UHFCommSubsystem class CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -847,7 +846,7 @@ graph graphics [ w 323.40000000000003 - h 82 + h 96 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -869,7 +868,8 @@ graph text " CommunicatingElement class Spacecraft class - SmallSat class + CubeSat3U class + CubeSat class CommunicatingElement class UndefinedPart " fontSize 14 @@ -885,8 +885,8 @@ graph id 23 graphics [ - w 284.90000000000003 - h 82 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -906,10 +906,8 @@ graph LabelGraphics [ text " - CommSubsystem class - KaCommSubsystem class - CommSubsystem class UndefinedPart - KaCommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -924,8 +922,8 @@ graph id 24 graphics [ - w 277.20000000000005 - h 82 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -946,9 +944,8 @@ graph [ text " CommSubsystem class - XCommSubsystem class + UHFCommSubsystem class CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -963,8 +960,8 @@ graph id 25 graphics [ - w 223.3 - h 54 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -984,8 +981,10 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + XCommSubsystem class + CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1040,8 +1039,8 @@ graph id 27 graphics [ - w 269.5 - h 68 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1061,9 +1060,8 @@ graph LabelGraphics [ text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -1078,8 +1076,8 @@ graph id 28 graphics [ - w 269.5 - h 68 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1100,8 +1098,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1116,8 +1115,8 @@ graph id 29 graphics [ - w 223.3 - h 54 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1137,8 +1136,9 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + UHFCommSubsystem class + CommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1154,7 +1154,7 @@ graph graphics [ w 323.40000000000003 - h 96 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1176,8 +1176,7 @@ graph text " CommunicatingElement class Spacecraft class - CubeSat6U class - CubeSat class + SmallSat class CommunicatingElement class UndefinedPart " fontSize 14 @@ -1193,8 +1192,8 @@ graph id 31 graphics [ - w 269.5 - h 68 + w 284.90000000000003 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1215,8 +1214,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + KaCommSubsystem class CommSubsystem class UndefinedPart + KaCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1231,8 +1231,8 @@ graph id 32 graphics [ - w 277.20000000000005 - h 82 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1252,10 +1252,8 @@ graph LabelGraphics [ text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -1270,8 +1268,8 @@ graph id 33 graphics [ - w 223.3 - h 54 + w 284.90000000000003 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1291,8 +1289,10 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + KaCommSubsystem class + CommSubsystem class UndefinedPart + KaCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1422,8 +1422,8 @@ graph id 37 graphics [ - w 269.5 - h 68 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1444,8 +1444,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1837,7 +1838,7 @@ graph edge [ source 6 - target 9 + target 8 graphics [ fill "#000000" @@ -1897,7 +1898,7 @@ graph edge [ source 14 - target 16 + target 15 graphics [ fill "#000000" @@ -1977,7 +1978,7 @@ graph edge [ source 22 - target 23 + target 24 graphics [ fill "#000000" @@ -1997,7 +1998,7 @@ graph edge [ source 22 - target 24 + target 25 graphics [ fill "#000000" @@ -2017,7 +2018,7 @@ graph edge [ source 26 - target 27 + target 28 graphics [ fill "#000000" @@ -2037,7 +2038,7 @@ graph edge [ source 26 - target 28 + target 29 graphics [ fill "#000000" @@ -2077,7 +2078,7 @@ graph edge [ source 30 - target 32 + target 33 graphics [ fill "#000000" @@ -2137,7 +2138,7 @@ graph edge [ source 6 - target 8 + target 9 graphics [ fill "#000000" @@ -2177,7 +2178,7 @@ graph edge [ source 14 - target 15 + target 16 graphics [ fill "#000000" @@ -2217,7 +2218,7 @@ graph edge [ source 22 - target 25 + target 23 graphics [ fill "#000000" @@ -2237,7 +2238,7 @@ graph edge [ source 26 - target 29 + target 27 graphics [ fill "#000000" @@ -2257,7 +2258,7 @@ graph edge [ source 30 - target 33 + target 32 graphics [ fill "#000000" @@ -2296,8 +2297,8 @@ graph ] edge [ - source 9 - target 3 + source 11 + target 2 graphics [ fill "#000000" @@ -2315,8 +2316,8 @@ graph ] edge [ - source 11 - target 7 + source 15 + target 2 graphics [ fill "#000000" @@ -2334,8 +2335,8 @@ graph ] edge [ - source 17 - target 11 + source 8 + target 17 graphics [ fill "#000000" @@ -2353,8 +2354,8 @@ graph ] edge [ - source 23 - target 9 + source 19 + target 8 graphics [ fill "#000000" @@ -2372,8 +2373,8 @@ graph ] edge [ - source 19 - target 2 + source 24 + target 8 graphics [ fill "#000000" @@ -2392,7 +2393,7 @@ graph edge [ source 28 - target 12 + target 2 graphics [ fill "#000000" @@ -2411,7 +2412,7 @@ graph edge [ source 31 - target 11 + target 12 graphics [ fill "#000000" @@ -2430,7 +2431,7 @@ graph edge [ source 35 - target 9 + target 3 graphics [ fill "#000000" diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run2/2_1.png b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run2/2_1.png index be69c5cc..5a090707 100644 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run2/2_1.png and b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run2/2_1.png differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run2/2_1.xmi b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run2/2_1.xmi index bd5bb4e3..fe90db85 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run2/2_1.xmi +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run2/2_1.xmi @@ -4,44 +4,44 @@ - - - + + + - - + + - - + + - + - - + + - - + + - - - + + + - - - + + + diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run3/3_1.gml b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run3/3_1.gml index f9950e40..8e761fef 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run3/3_1.gml +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run3/3_1.gml @@ -310,8 +310,8 @@ graph id 8 graphics [ - w 223.3 - h 54 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -331,8 +331,10 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + XCommSubsystem class + CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -347,8 +349,8 @@ graph id 9 graphics [ - w 269.5 - h 68 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -368,9 +370,8 @@ graph LabelGraphics [ text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -386,7 +387,7 @@ graph graphics [ w 323.40000000000003 - h 82 + h 96 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -408,7 +409,8 @@ graph text " CommunicatingElement class Spacecraft class - SmallSat class + CubeSat6U class + CubeSat class CommunicatingElement class UndefinedPart " fontSize 14 @@ -424,8 +426,8 @@ graph id 11 graphics [ - w 277.20000000000005 - h 82 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -446,9 +448,8 @@ graph [ text " CommSubsystem class - XCommSubsystem class + UHFCommSubsystem class CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -463,8 +464,8 @@ graph id 12 graphics [ - w 277.20000000000005 - h 82 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -484,10 +485,8 @@ graph LabelGraphics [ text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -502,8 +501,8 @@ graph id 13 graphics [ - w 223.3 - h 54 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -523,8 +522,10 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + XCommSubsystem class + CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -562,7 +563,7 @@ graph text " CommunicatingElement class Spacecraft class - CubeSat6U class + CubeSat3U class CubeSat class CommunicatingElement class UndefinedPart " @@ -617,8 +618,8 @@ graph id 16 graphics [ - w 223.3 - h 54 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -638,8 +639,10 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + XCommSubsystem class + CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -654,8 +657,8 @@ graph id 17 graphics [ - w 277.20000000000005 - h 82 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -675,10 +678,8 @@ graph LabelGraphics [ text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -694,7 +695,7 @@ graph graphics [ w 323.40000000000003 - h 96 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -716,8 +717,7 @@ graph text " CommunicatingElement class Spacecraft class - CubeSat6U class - CubeSat class + SmallSat class CommunicatingElement class UndefinedPart " fontSize 14 @@ -733,8 +733,8 @@ graph id 19 graphics [ - w 269.5 - h 68 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -755,8 +755,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -808,8 +809,8 @@ graph id 21 graphics [ - w 323.40000000000003 - h 82 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -829,10 +830,9 @@ graph LabelGraphics [ text " - CommunicatingElement class - Spacecraft class - SmallSat class - CommunicatingElement class UndefinedPart + CommSubsystem class + UHFCommSubsystem class + CommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -847,8 +847,8 @@ graph id 22 graphics [ - w 277.20000000000005 - h 82 + w 323.40000000000003 + h 96 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -868,10 +868,11 @@ graph LabelGraphics [ text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart + CommunicatingElement class + Spacecraft class + CubeSat3U class + CubeSat class + CommunicatingElement class UndefinedPart " fontSize 14 fontName "Consolas" @@ -886,8 +887,8 @@ graph id 23 graphics [ - w 284.90000000000003 - h 82 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -907,10 +908,8 @@ graph LabelGraphics [ text " - CommSubsystem class - KaCommSubsystem class - CommSubsystem class UndefinedPart - KaCommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -925,8 +924,8 @@ graph id 24 graphics [ - w 269.5 - h 68 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -947,8 +946,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -963,8 +963,8 @@ graph id 25 graphics [ - w 223.3 - h 54 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -984,8 +984,9 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + UHFCommSubsystem class + CommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1001,7 +1002,7 @@ graph graphics [ w 323.40000000000003 - h 96 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1023,8 +1024,7 @@ graph text " CommunicatingElement class Spacecraft class - CubeSat6U class - CubeSat class + SmallSat class CommunicatingElement class UndefinedPart " fontSize 14 @@ -1040,8 +1040,8 @@ graph id 27 graphics [ - w 269.5 - h 68 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1061,9 +1061,8 @@ graph LabelGraphics [ text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -1078,8 +1077,8 @@ graph id 28 graphics [ - w 223.3 - h 54 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1099,8 +1098,9 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + UHFCommSubsystem class + CommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1232,8 +1232,8 @@ graph id 32 graphics [ - w 269.5 - h 68 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1253,9 +1253,8 @@ graph LabelGraphics [ text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -1270,8 +1269,8 @@ graph id 33 graphics [ - w 223.3 - h 54 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1291,8 +1290,9 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + UHFCommSubsystem class + CommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1330,7 +1330,7 @@ graph text " CommunicatingElement class Spacecraft class - CubeSat3U class + CubeSat6U class CubeSat class CommunicatingElement class UndefinedPart " @@ -1385,8 +1385,8 @@ graph id 36 graphics [ - w 269.5 - h 68 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1407,8 +1407,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1697,7 +1698,7 @@ graph edge [ source 0 - target 21 + target 22 graphics [ fill "#000000" @@ -1837,7 +1838,7 @@ graph edge [ source 6 - target 9 + target 8 graphics [ fill "#000000" @@ -1877,7 +1878,7 @@ graph edge [ source 10 - target 12 + target 13 graphics [ fill "#000000" @@ -1917,7 +1918,7 @@ graph edge [ source 14 - target 17 + target 16 graphics [ fill "#000000" @@ -1956,8 +1957,8 @@ graph ] edge [ - source 21 - target 22 + source 18 + target 21 graphics [ fill "#000000" @@ -1976,8 +1977,8 @@ graph ] edge [ - source 21 - target 23 + source 22 + target 24 graphics [ fill "#000000" @@ -1996,8 +1997,8 @@ graph ] edge [ - source 18 - target 24 + source 22 + target 25 graphics [ fill "#000000" @@ -2017,7 +2018,7 @@ graph edge [ source 26 - target 27 + target 28 graphics [ fill "#000000" @@ -2077,7 +2078,7 @@ graph edge [ source 30 - target 32 + target 33 graphics [ fill "#000000" @@ -2137,7 +2138,7 @@ graph edge [ source 6 - target 8 + target 9 graphics [ fill "#000000" @@ -2157,7 +2158,7 @@ graph edge [ source 10 - target 13 + target 12 graphics [ fill "#000000" @@ -2177,7 +2178,7 @@ graph edge [ source 14 - target 16 + target 17 graphics [ fill "#000000" @@ -2216,8 +2217,8 @@ graph ] edge [ - source 21 - target 25 + source 22 + target 23 graphics [ fill "#000000" @@ -2237,7 +2238,7 @@ graph edge [ source 26 - target 28 + target 27 graphics [ fill "#000000" @@ -2257,7 +2258,7 @@ graph edge [ source 30 - target 33 + target 32 graphics [ fill "#000000" @@ -2315,7 +2316,7 @@ graph ] edge [ - source 12 + source 13 target 2 graphics [ @@ -2334,8 +2335,8 @@ graph ] edge [ - source 17 - target 7 + source 15 + target 11 graphics [ fill "#000000" @@ -2353,8 +2354,8 @@ graph ] edge [ - source 22 - target 2 + source 21 + target 11 graphics [ fill "#000000" @@ -2372,8 +2373,8 @@ graph ] edge [ - source 19 - target 15 + source 24 + target 2 graphics [ fill "#000000" @@ -2391,8 +2392,8 @@ graph ] edge [ - source 27 - target 19 + source 29 + target 15 graphics [ fill "#000000" @@ -2410,8 +2411,8 @@ graph ] edge [ - source 32 - target 15 + source 31 + target 2 graphics [ fill "#000000" @@ -2430,7 +2431,7 @@ graph edge [ source 35 - target 27 + target 28 graphics [ fill "#000000" diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run3/3_1.png b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run3/3_1.png index e7aa5b5c..783b9fb9 100644 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run3/3_1.png and b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run3/3_1.png differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run3/3_1.xmi b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run3/3_1.xmi index 081ea350..cccb6a10 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run3/3_1.xmi +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run3/3_1.xmi @@ -4,44 +4,44 @@ - - - - - - - + + + - - - - - - + - - - + + - + + - + + + + + + + + + + diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run4/4_1.gml b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run4/4_1.gml index 06f2d5b6..1329cc70 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run4/4_1.gml +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run4/4_1.gml @@ -271,8 +271,8 @@ graph id 7 graphics [ - w 277.20000000000005 - h 82 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -293,9 +293,8 @@ graph [ text " CommSubsystem class - XCommSubsystem class + UHFCommSubsystem class CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -347,8 +346,8 @@ graph id 9 graphics [ - w 269.5 - h 68 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -369,8 +368,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -386,7 +386,7 @@ graph graphics [ w 323.40000000000003 - h 96 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -408,8 +408,7 @@ graph text " CommunicatingElement class Spacecraft class - CubeSat3U class - CubeSat class + SmallSat class CommunicatingElement class UndefinedPart " fontSize 14 @@ -425,8 +424,8 @@ graph id 11 graphics [ - w 223.3 - h 54 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -446,8 +445,10 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + XCommSubsystem class + CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -501,8 +502,8 @@ graph id 13 graphics [ - w 323.40000000000003 - h 96 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -522,11 +523,8 @@ graph LabelGraphics [ text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -541,8 +539,8 @@ graph id 14 graphics [ - w 277.20000000000005 - h 82 + w 323.40000000000003 + h 96 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -562,10 +560,11 @@ graph LabelGraphics [ text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart + CommunicatingElement class + Spacecraft class + CubeSat3U class + CubeSat class + CommunicatingElement class UndefinedPart " fontSize 14 fontName "Consolas" @@ -580,8 +579,8 @@ graph id 15 graphics [ - w 277.20000000000005 - h 82 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -602,9 +601,8 @@ graph [ text " CommSubsystem class - XCommSubsystem class + UHFCommSubsystem class CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -619,8 +617,8 @@ graph id 16 graphics [ - w 277.20000000000005 - h 82 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -641,9 +639,8 @@ graph [ text " CommSubsystem class - XCommSubsystem class + UHFCommSubsystem class CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -734,7 +731,7 @@ graph id 19 graphics [ - w 284.90000000000003 + w 277.20000000000005 h 82 type "rectangle" fill "#FFFFFF" @@ -756,9 +753,9 @@ graph [ text " CommSubsystem class - KaCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart - KaCommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -773,8 +770,8 @@ graph id 20 graphics [ - w 223.3 - h 54 + w 284.90000000000003 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -794,8 +791,10 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + KaCommSubsystem class + CommSubsystem class UndefinedPart + KaCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -810,8 +809,8 @@ graph id 21 graphics [ - w 323.40000000000003 - h 82 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -831,10 +830,8 @@ graph LabelGraphics [ text " - CommunicatingElement class - Spacecraft class - SmallSat class - CommunicatingElement class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -849,8 +846,8 @@ graph id 22 graphics [ - w 269.5 - h 68 + w 323.40000000000003 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -870,9 +867,10 @@ graph LabelGraphics [ text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart + CommunicatingElement class + Spacecraft class + SmallSat class + CommunicatingElement class UndefinedPart " fontSize 14 fontName "Consolas" @@ -926,8 +924,8 @@ graph id 24 graphics [ - w 277.20000000000005 - h 82 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -948,9 +946,8 @@ graph [ text " CommSubsystem class - XCommSubsystem class + UHFCommSubsystem class CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1003,7 +1000,7 @@ graph graphics [ w 323.40000000000003 - h 82 + h 96 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1025,7 +1022,8 @@ graph text " CommunicatingElement class Spacecraft class - SmallSat class + CubeSat3U class + CubeSat class CommunicatingElement class UndefinedPart " fontSize 14 @@ -1041,8 +1039,8 @@ graph id 27 graphics [ - w 269.5 - h 68 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1063,8 +1061,9 @@ graph [ text " CommSubsystem class - UHFCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1079,8 +1078,8 @@ graph id 28 graphics [ - w 223.3 - h 54 + w 277.20000000000005 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1100,8 +1099,10 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + XCommSubsystem class + CommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1116,8 +1117,8 @@ graph id 29 graphics [ - w 277.20000000000005 - h 82 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1137,10 +1138,8 @@ graph LabelGraphics [ text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -1156,7 +1155,7 @@ graph graphics [ w 323.40000000000003 - h 82 + h 96 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1178,7 +1177,8 @@ graph text " CommunicatingElement class Spacecraft class - SmallSat class + CubeSat6U class + CubeSat class CommunicatingElement class UndefinedPart " fontSize 14 @@ -1194,8 +1194,8 @@ graph id 31 graphics [ - w 284.90000000000003 - h 82 + w 269.5 + h 68 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1216,9 +1216,8 @@ graph [ text " CommSubsystem class - KaCommSubsystem class + UHFCommSubsystem class CommSubsystem class UndefinedPart - KaCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1233,7 +1232,7 @@ graph id 32 graphics [ - w 284.90000000000003 + w 277.20000000000005 h 82 type "rectangle" fill "#FFFFFF" @@ -1255,9 +1254,9 @@ graph [ text " CommSubsystem class - KaCommSubsystem class + XCommSubsystem class CommSubsystem class UndefinedPart - KaCommSubsystem class UndefinedPart + XCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1310,7 +1309,7 @@ graph graphics [ w 323.40000000000003 - h 96 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1332,8 +1331,7 @@ graph text " CommunicatingElement class Spacecraft class - CubeSat3U class - CubeSat class + SmallSat class CommunicatingElement class UndefinedPart " fontSize 14 @@ -1388,8 +1386,8 @@ graph id 36 graphics [ - w 269.5 - h 68 + w 223.3 + h 54 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1409,9 +1407,8 @@ graph LabelGraphics [ text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart + Payload class + InterferometryPayload class " fontSize 14 fontName "Consolas" @@ -1426,8 +1423,8 @@ graph id 37 graphics [ - w 223.3 - h 54 + w 284.90000000000003 + h 82 type "rectangle" fill "#FFFFFF" fill2 "#FFFFFF" @@ -1447,8 +1444,10 @@ graph LabelGraphics [ text " - Payload class - InterferometryPayload class + CommSubsystem class + KaCommSubsystem class + CommSubsystem class UndefinedPart + KaCommSubsystem class UndefinedPart " fontSize 14 fontName "Consolas" @@ -1660,7 +1659,7 @@ graph edge [ source 0 - target 13 + target 14 graphics [ fill "#000000" @@ -1700,7 +1699,7 @@ graph edge [ source 0 - target 21 + target 22 graphics [ fill "#000000" @@ -1860,7 +1859,7 @@ graph edge [ source 10 - target 12 + target 11 graphics [ fill "#000000" @@ -1879,8 +1878,8 @@ graph ] edge [ - source 13 - target 14 + source 10 + target 12 graphics [ fill "#000000" @@ -1899,7 +1898,7 @@ graph ] edge [ - source 13 + source 14 target 15 graphics [ @@ -1919,7 +1918,7 @@ graph ] edge [ - source 10 + source 14 target 16 graphics [ @@ -1959,8 +1958,8 @@ graph ] edge [ - source 21 - target 22 + source 18 + target 20 graphics [ fill "#000000" @@ -1979,7 +1978,7 @@ graph ] edge [ - source 18 + source 22 target 23 graphics [ @@ -1999,7 +1998,7 @@ graph ] edge [ - source 21 + source 22 target 24 graphics [ @@ -2040,7 +2039,7 @@ graph edge [ source 26 - target 29 + target 28 graphics [ fill "#000000" @@ -2120,7 +2119,7 @@ graph edge [ source 34 - target 36 + target 37 graphics [ fill "#000000" @@ -2160,7 +2159,7 @@ graph edge [ source 10 - target 11 + target 13 graphics [ fill "#000000" @@ -2179,7 +2178,7 @@ graph ] edge [ - source 13 + source 14 target 17 graphics [ @@ -2200,7 +2199,7 @@ graph edge [ source 18 - target 20 + target 21 graphics [ fill "#000000" @@ -2219,7 +2218,7 @@ graph ] edge [ - source 21 + source 22 target 25 graphics [ @@ -2240,7 +2239,7 @@ graph edge [ source 26 - target 28 + target 29 graphics [ fill "#000000" @@ -2280,7 +2279,7 @@ graph edge [ source 34 - target 37 + target 36 graphics [ fill "#000000" @@ -2299,7 +2298,7 @@ graph ] edge [ - source 7 + source 9 target 2 graphics [ @@ -2319,7 +2318,7 @@ graph edge [ source 12 - target 2 + target 9 graphics [ fill "#000000" @@ -2338,7 +2337,7 @@ graph edge [ source 15 - target 12 + target 7 graphics [ fill "#000000" @@ -2357,7 +2356,7 @@ graph edge [ source 19 - target 3 + target 12 graphics [ fill "#000000" @@ -2375,8 +2374,8 @@ graph ] edge [ - source 24 - target 16 + source 23 + target 9 graphics [ fill "#000000" @@ -2395,7 +2394,7 @@ graph edge [ source 27 - target 22 + target 2 graphics [ fill "#000000" @@ -2414,7 +2413,7 @@ graph edge [ source 32 - target 3 + target 9 graphics [ fill "#000000" @@ -2433,7 +2432,7 @@ graph edge [ source 35 - target 2 + target 9 graphics [ fill "#000000" diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run4/4_1.png b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run4/4_1.png index 8cdb0656..f39da70e 100644 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run4/4_1.png and b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run4/4_1.png differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run4/4_1.xmi b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run4/4_1.xmi index a49adea1..5f0af641 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run4/4_1.xmi +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run4/4_1.xmi @@ -5,43 +5,43 @@ + - - + - + - + + - - + + + + + + + - - - - + + + - - - - - + - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run5/5_1.gml b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run5/5_1.gml deleted file mode 100644 index b709f251..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run5/5_1.gml +++ /dev/null @@ -1,2452 +0,0 @@ -graph -[ - node - [ - id 0 - graphics - [ - w 315.70000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 1" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - ConstellationMission class DefinedPart - InterferometryMission class DefinedPart - ConstellationMission class - InterferometryMission class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 1 - graphics - [ - w 308.0 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 2" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class DefinedPart - GroundStationNetwork class DefinedPart - CommunicatingElement class - GroundStationNetwork class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 2 - graphics - [ - w 261.8 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 3" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class DefinedPart - XCommSubsystem class DefinedPart - CommSubsystem class - XCommSubsystem class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 3 - graphics - [ - w 269.5 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "o 4" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class DefinedPart - KaCommSubsystem class DefinedPart - CommSubsystem class - KaCommSubsystem class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 4 - graphics - [ - w 41.800000000000004 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "true" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 5 - graphics - [ - w 50.6 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "false" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 6 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 7 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 8 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 9 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 10 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 11 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 12 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 13 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 14 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 15 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 16 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 17 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 18 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 19 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 20 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 21 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 22 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 23 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 24 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 25 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 26 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat6U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 27 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 28 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 29 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 30 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 31 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 32 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 33 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 34 - graphics - [ - w 323.40000000000003 - h 96 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommunicatingElement class - Spacecraft class - CubeSat3U class - CubeSat class - CommunicatingElement class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 35 - graphics - [ - w 269.5 - h 68 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - UHFCommSubsystem class - CommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 36 - graphics - [ - w 223.3 - h 54 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - Payload class - InterferometryPayload class - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 37 - graphics - [ - w 277.20000000000005 - h 82 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "null" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - CommSubsystem class - XCommSubsystem class - CommSubsystem class UndefinedPart - XCommSubsystem class UndefinedPart - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 38 - graphics - [ - w 112.2 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Integers" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 39 - graphics - [ - w 85.80000000000001 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Reals" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 40 - graphics - [ - w 103.4 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Strings" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - - node - [ - id 41 - graphics - [ - w 103.4 - h 26 - type "rectangle" - fill "#FFFFFF" - fill2 "#FFFFFF" - outline "#000000" - ] - LabelGraphics - [ - text "New Objects" - outline "#000000" - fill "#FFFFFF" - fontSize 16 - fontName "Monospace" - autoSizePolicy "node_width" - anchor "t" - borderDistance 0.0 - ] - LabelGraphics - [ - text " - " - fontSize 14 - fontName "Consolas" - alignment "left" - anchor "tl" - borderDistance 6 - ] - ] - edge - [ - source 0 - target 1 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "groundStationNetwork reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 6 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 9 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 10 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 18 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 21 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 26 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 30 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 0 - target 34 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "spacecraft reference ConstellationMission" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 1 - target 2 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 1 - target 3 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 7 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 8 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 13 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 9 - target 14 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 9 - target 15 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 16 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 19 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 20 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 21 - target 22 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 21 - target 23 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 28 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 29 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 32 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 33 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 35 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 37 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "commSubsystem reference CommunicatingElement" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 6 - target 11 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 9 - target 12 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 10 - target 17 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 21 - target 24 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 18 - target 25 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 26 - target 27 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 30 - target 31 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 34 - target 36 - graphics - [ - fill "#000000" - width 3 - targetArrow "standard" - ] - LabelGraphics - [ - text "payload reference Spacecraft" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 8 - target 2 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 14 - target 7 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 16 - target 8 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 19 - target 16 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 22 - target 15 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 28 - target 15 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 33 - target 7 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] - edge - [ - source 35 - target 28 - graphics - [ - fill "#000000" - targetArrow "standard" - ] - LabelGraphics - [ - text "target reference CommSubsystem" - fontSize 14 - fontName "Consolas" - configuration "AutoFlippingLabel" - model "six_pos" - position "thead" - ] - ] -] - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run5/5_1.png b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run5/5_1.png deleted file mode 100644 index fb893419..00000000 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run5/5_1.png and /dev/null differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run5/5_1.xmi b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run5/5_1.xmi deleted file mode 100644 index ae933942..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/models/run5/5_1.xmi +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/statistics.csv b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/statistics.csv deleted file mode 100644 index c883eb87..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/statistics.csv +++ /dev/null @@ -1,7 +0,0 @@ -Task;Run;Result;Domain to logic transformation time;Logic to solver transformation time;Solver time;Postprocessing time;_Solution0FoundAt;TransformationExecutionTime;TypeAnalysisTime;StateCoderTime;StateCoderFailCount;SolutionCopyTime -1;1;ModelResultImpl;413;4298;29022;6539817577;28925;4664;135;14914;0;8 -1;2;ModelResultImpl;413;1988;29354;3276980485;29280;4331;0;17181;26;2 -1;3;ModelResultImpl;413;2030;39848;3828155076;39782;7257;0;21099;162;1 -1;4;ModelResultImpl;413;2049;381471;3603648606;381407;45077;0;275224;709;1 -1;5;ModelResultImpl;413;1839;60648;3372644526;60584;10393;0;34860;239;1 - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/plugin.xml b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/plugin.xml index a8146d37..8c9f4be1 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/plugin.xml +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/plugin.xml @@ -15,9 +15,6 @@ - - - diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/SatelliteQueries.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/SatelliteQueries.java index d7326877..9025d93a 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/SatelliteQueries.java +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/SatelliteQueries.java @@ -5,8 +5,6 @@ package hu.bme.mit.inf.dslreasoner.domains.satellite.queries; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CommunicationLinkDoesNotStartAtContainingElement; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CommunicationLoop; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CostMetric; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CoverageMetric; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CubeSatWithKaAntenna; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.IncompatibleSourceAndTargetBand; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.NoLinkToGroundStation; @@ -14,7 +12,6 @@ import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.NoPotentialLinkToGro import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.NotEnoughInterferometryPayloads; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.SmallSat; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.ThreeUCubeSatWithNonUhfCrossLink; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.TimeMetric; import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedPatternGroup; @@ -35,9 +32,6 @@ import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedPatternGroup; *
  • threeUCubeSatWithNonUhfCrossLink
  • *
  • cubeSatWithKaAntenna
  • *
  • smallSat
  • - *
  • coverageMetric
  • - *
  • timeMetric
  • - *
  • costMetric
  • * * * @see IQueryGroup @@ -71,9 +65,6 @@ public final class SatelliteQueries extends BaseGeneratedPatternGroup { querySpecifications.add(ThreeUCubeSatWithNonUhfCrossLink.instance()); querySpecifications.add(CubeSatWithKaAntenna.instance()); querySpecifications.add(SmallSat.instance()); - querySpecifications.add(CoverageMetric.instance()); - querySpecifications.add(TimeMetric.instance()); - querySpecifications.add(CostMetric.instance()); } public CommunicationLinkDoesNotStartAtContainingElement getCommunicationLinkDoesNotStartAtContainingElement() { @@ -147,28 +138,4 @@ public final class SatelliteQueries extends BaseGeneratedPatternGroup { public SmallSat.Matcher getSmallSat(final ViatraQueryEngine engine) { return SmallSat.Matcher.on(engine); } - - public CoverageMetric getCoverageMetric() { - return CoverageMetric.instance(); - } - - public CoverageMetric.Matcher getCoverageMetric(final ViatraQueryEngine engine) { - return CoverageMetric.Matcher.on(engine); - } - - public TimeMetric getTimeMetric() { - return TimeMetric.instance(); - } - - public TimeMetric.Matcher getTimeMetric(final ViatraQueryEngine engine) { - return TimeMetric.Matcher.on(engine); - } - - public CostMetric getCostMetric() { - return CostMetric.instance(); - } - - public CostMetric.Matcher getCostMetric(final ViatraQueryEngine engine) { - return CostMetric.Matcher.on(engine); - } } diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/internal/SatelliteQueriesAll.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/internal/SatelliteQueriesAll.java index 0235dbec..4093e2b2 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/internal/SatelliteQueriesAll.java +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/internal/SatelliteQueriesAll.java @@ -5,8 +5,6 @@ package hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CommunicationLinkDoesNotStartAtContainingElement; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CommunicationLoop; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CostMetric; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CoverageMetric; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CubeSatWithKaAntenna; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.IncompatibleSourceAndTargetBand; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.NoLinkToGroundStation; @@ -14,33 +12,18 @@ import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.NoPotentialLinkToGro import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.NotEnoughInterferometryPayloads; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.SmallSat; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.ThreeUCubeSatWithNonUhfCrossLink; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.TimeMetric; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.AdditionalCommSubsystemCost; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.AtLeastTwoInterferometryPayloads; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.BasePrice; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.CommSubsystemBandUhf; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.CubeSat3U; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.CubeSat6U; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.DirectCommunicationLink; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.GroundStationNetwork; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.IncomingData; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.IndirectCommunicationLink; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.IndirectLinkAllowed; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.InterferometryPayloadCost; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.LinkAllowed; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.MatchingAntenna; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.MatchingCommSubsystem; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.MissionCost; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.MissionCoverage; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.MissionTime; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.ScienceData; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.SpacecraftCost; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.SpacecraftOfKindCount; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.SpacecraftUplink; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.SpacecraftWithInterferometryPayload; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.SpacecraftWithTwoCommSubsystems; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.TransmitRate; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.TransmitTime; import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.TransmittingCommSubsystem; import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedPatternGroup; @@ -72,23 +55,6 @@ import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedPatternGroup; *
  • groundStationNetwork
  • *
  • cubeSatWithKaAntenna
  • *
  • smallSat
  • - *
  • coverageMetric
  • - *
  • missionCoverage
  • - *
  • timeMetric
  • - *
  • missionTime
  • - *
  • transmitTime
  • - *
  • incomingData
  • - *
  • scienceData
  • - *
  • transmitRate
  • - *
  • spacecraftUplink
  • - *
  • costMetric
  • - *
  • missionCost
  • - *
  • spacecraftCost
  • - *
  • spacecraftOfKindCount
  • - *
  • basePrice
  • - *
  • interferometryPayloadCost
  • - *
  • additionalCommSubsystemCost
  • - *
  • spacecraftWithTwoCommSubsystems
  • * * * @see IQueryGroup @@ -135,22 +101,5 @@ public final class SatelliteQueriesAll extends BaseGeneratedPatternGroup { querySpecifications.add(GroundStationNetwork.instance()); querySpecifications.add(CubeSatWithKaAntenna.instance()); querySpecifications.add(SmallSat.instance()); - querySpecifications.add(CoverageMetric.instance()); - querySpecifications.add(MissionCoverage.instance()); - querySpecifications.add(TimeMetric.instance()); - querySpecifications.add(MissionTime.instance()); - querySpecifications.add(TransmitTime.instance()); - querySpecifications.add(IncomingData.instance()); - querySpecifications.add(ScienceData.instance()); - querySpecifications.add(TransmitRate.instance()); - querySpecifications.add(SpacecraftUplink.instance()); - querySpecifications.add(CostMetric.instance()); - querySpecifications.add(MissionCost.instance()); - querySpecifications.add(SpacecraftCost.instance()); - querySpecifications.add(SpacecraftOfKindCount.instance()); - querySpecifications.add(BasePrice.instance()); - querySpecifications.add(InterferometryPayloadCost.instance()); - querySpecifications.add(AdditionalCommSubsystemCost.instance()); - querySpecifications.add(SpacecraftWithTwoCommSubsystems.instance()); } } diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/internal/SpacecraftOfKindCount.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/internal/SpacecraftOfKindCount.java deleted file mode 100644 index 3c4f9244..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/internal/SpacecraftOfKindCount.java +++ /dev/null @@ -1,189 +0,0 @@ -/** - * Generated from platform:/resource/hu.bme.mit.inf.dslreasoner.domains.satellite/src/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/SatelliteQueries.vql - */ -package hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal; - -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.SmallSat; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.CubeSat3U; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.CubeSat6U; -import java.util.Arrays; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Set; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecificationWithGenericMatcher; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.context.common.JavaTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.PatternMatchCounter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.TypeFilterConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; - -/** - * A pattern-specific query specification that can instantiate GenericPatternMatcher in a type-safe way. - * - *

    Original source: - *

    - *         private pattern spacecraftOfKindCount(Sat : Spacecraft, Count : java Integer) {
    - *         	CubeSat3U(Sat);
    - *         	Count == count find cubeSat3U(_);
    - *         } or {
    - *         	CubeSat6U(Sat);
    - *         	Count == count find cubeSat6U(_);
    - *         } or {
    - *         	SmallSat(Sat);
    - *         	Count == count find smallSat(_);
    - *         }
    - * 
    - * - * @see GenericPatternMatcher - * @see GenericPatternMatch - * - */ -@SuppressWarnings("all") -public final class SpacecraftOfKindCount extends BaseGeneratedEMFQuerySpecificationWithGenericMatcher { - private SpacecraftOfKindCount() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static SpacecraftOfKindCount instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - /** - * Inner class allowing the singleton instance of {@link JvmGenericType: hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.SpacecraftOfKindCount (visibility: PUBLIC, simpleName: SpacecraftOfKindCount, identifier: hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.SpacecraftOfKindCount, deprecated: ) (abstract: false, static: false, final: true, packageName: hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal) (interface: false, strictFloatingPoint: false, anonymous: false)} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link JvmGenericType: hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.SpacecraftOfKindCount (visibility: PUBLIC, simpleName: SpacecraftOfKindCount, identifier: hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal.SpacecraftOfKindCount, deprecated: ) (abstract: false, static: false, final: true, packageName: hu.bme.mit.inf.dslreasoner.domains.satellite.queries.internal) (interface: false, strictFloatingPoint: false, anonymous: false)#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final SpacecraftOfKindCount INSTANCE = new SpacecraftOfKindCount(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final SpacecraftOfKindCount.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_Sat = new PParameter("Sat", "satellite.Spacecraft", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http://www.example.org/satellite", "Spacecraft")), PParameterDirection.INOUT); - - private final PParameter parameter_Count = new PParameter("Count", "java.lang.Integer", new JavaTransitiveInstancesKey(java.lang.Integer.class), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_Sat, parameter_Count); - - private GeneratedPQuery() { - super(PVisibility.PRIVATE); - } - - @Override - public String getFullyQualifiedName() { - return "hu.bme.mit.inf.dslreasoner.domains.satellite.queries.spacecraftOfKindCount"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("Sat","Count"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_Sat = body.getOrCreateVariableByName("Sat"); - PVariable var_Count = body.getOrCreateVariableByName("Count"); - PVariable var___0_ = body.getOrCreateVariableByName("_<0>"); - new TypeConstraint(body, Tuples.flatTupleOf(var_Sat), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http://www.example.org/satellite", "Spacecraft"))); - new TypeFilterConstraint(body, Tuples.flatTupleOf(var_Count), new JavaTransitiveInstancesKey(java.lang.Integer.class)); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_Sat, parameter_Sat), - new ExportedParameter(body, var_Count, parameter_Count) - )); - // CubeSat3U(Sat) - new TypeConstraint(body, Tuples.flatTupleOf(var_Sat), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http://www.example.org/satellite", "CubeSat3U"))); - // Count == count find cubeSat3U(_) - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new PatternMatchCounter(body, Tuples.flatTupleOf(var___0_), CubeSat3U.instance().getInternalQueryRepresentation(), var__virtual_0_); - new Equality(body, var_Count, var__virtual_0_); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_Sat = body.getOrCreateVariableByName("Sat"); - PVariable var_Count = body.getOrCreateVariableByName("Count"); - PVariable var___0_ = body.getOrCreateVariableByName("_<0>"); - new TypeConstraint(body, Tuples.flatTupleOf(var_Sat), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http://www.example.org/satellite", "Spacecraft"))); - new TypeFilterConstraint(body, Tuples.flatTupleOf(var_Count), new JavaTransitiveInstancesKey(java.lang.Integer.class)); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_Sat, parameter_Sat), - new ExportedParameter(body, var_Count, parameter_Count) - )); - // CubeSat6U(Sat) - new TypeConstraint(body, Tuples.flatTupleOf(var_Sat), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http://www.example.org/satellite", "CubeSat6U"))); - // Count == count find cubeSat6U(_) - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new PatternMatchCounter(body, Tuples.flatTupleOf(var___0_), CubeSat6U.instance().getInternalQueryRepresentation(), var__virtual_0_); - new Equality(body, var_Count, var__virtual_0_); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_Sat = body.getOrCreateVariableByName("Sat"); - PVariable var_Count = body.getOrCreateVariableByName("Count"); - PVariable var___0_ = body.getOrCreateVariableByName("_<0>"); - new TypeConstraint(body, Tuples.flatTupleOf(var_Sat), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http://www.example.org/satellite", "Spacecraft"))); - new TypeFilterConstraint(body, Tuples.flatTupleOf(var_Count), new JavaTransitiveInstancesKey(java.lang.Integer.class)); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_Sat, parameter_Sat), - new ExportedParameter(body, var_Count, parameter_Count) - )); - // SmallSat(Sat) - new TypeConstraint(body, Tuples.flatTupleOf(var_Sat), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http://www.example.org/satellite", "SmallSat"))); - // Count == count find smallSat(_) - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new PatternMatchCounter(body, Tuples.flatTupleOf(var___0_), SmallSat.instance().getInternalQueryRepresentation(), var__virtual_0_); - new Equality(body, var_Count, var__virtual_0_); - bodies.add(body); - } - return bodies; - } - } -} diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/CostObjective.xtend b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/CostObjective.xtend index 3a8688e9..43b2902f 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/CostObjective.xtend +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/CostObjective.xtend @@ -1,13 +1,13 @@ package hu.bme.mit.inf.dslreasoner.domains.satellite.mdeo -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CostMetric - -class CostObjective extends MetricBasedGuidanceFunction { - new() { - super(CostMetric.instance) - } - - override getName() { - "Cost" - } -} +//import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CostMetric +// +//class CostObjective extends MetricBasedGuidanceFunction { +// new() { +// super(CostMetric.instance) +// } +// +// override getName() { +// "Cost" +// } +//} diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/SatelliteQueries.vql b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/SatelliteQueries.vql index 711c7ce6..c7135562 100644 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/SatelliteQueries.vql +++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/src/hu/bme/mit/inf/dslreasoner/domains/satellite/queries/SatelliteQueries.vql @@ -158,146 +158,146 @@ pattern smallSat(Sat : SmallSat) { SmallSat(Sat); } +//// +//// Metrics +//// // -// Metrics +//// Coverage // - -// Coverage - -pattern coverageMetric(Coverage : java Double) { - Coverage == sum find missionCoverage(_, #_); -} - -private pattern missionCoverage(Mission : InterferometryMission, Coverage : java Double) { - InterferometryMission.observationTime(Mission, ObservationTime); - ObserverCount == count find spacecraftWithInterferometryPayload(Mission, _); - Coverage == eval(Math.pow(1 - 2.0 / ObserverCount, 1 + 9 * (1.0 / ObservationTime)) + 0.05 * ObservationTime / 3); -} - -// Time - -pattern timeMetric(Time : java Double) { - Time == sum find missionTime(_, #_); -} - -private pattern missionTime(Mission : InterferometryMission, Time : java Double) { - InterferometryMission.observationTime(Mission, ObservationTime); - TrasmitTime == sum find transmitTime(Mission, _, #_); - Time == eval(TrasmitTime + 60.0 * ObservationTime); -} - -private pattern transmitTime(Mission : InterferometryMission, Spacecraft : Spacecraft, TransmitTime : java Double) { - ConstellationMission.spacecraft(Mission, Spacecraft); - find scienceData(Spacecraft, ScienceData); - IncomingData == sum find incomingData(Spacecraft, _, #_); - find transmitRate(Spacecraft, TransmitRate); - TransmitTime == eval((ScienceData + IncomingData) / (7.5 * TransmitRate)); -} - -private pattern incomingData(Spacecraft : Spacecraft, Source : Spacecraft, Data : java Double) { - find indirectCommunicationLink(Source, Spacecraft); - find scienceData(Source, Data); -} - -private pattern scienceData(Spacecraft : Spacecraft, Data : java Double) { - ConstellationMission.spacecraft(Mission, Spacecraft); - InterferometryMission.observationTime(Mission, ObservationTime); - Data == eval(12.0 * ObservationTime); -} - -private pattern transmitRate(Spacecraft : Spacecraft, TransmitRate : java Double) { - find spacecraftUplink(Spacecraft, Comm, Target); - UHFCommSubsystem(Comm); - Spacecraft(Target); - TransmitRate == 5.0; -} or { - find spacecraftUplink(Spacecraft, Comm, Target); - XCommSubsystem(Comm); - Spacecraft(Target); - TransmitRate == 1.6; -} or { - find spacecraftUplink(Spacecraft, Comm, Target); - XCommSubsystem(Comm); - GroundStationNetwork(Target); - TransmitRate == 0.7; -} or { - find spacecraftUplink(Spacecraft, Comm, Target); - KaCommSubsystem(Comm); - Spacecraft(Target); - TransmitRate == 220.0; -} or { - find spacecraftUplink(Spacecraft, Comm, Target); - KaCommSubsystem(Comm); - GroundStationNetwork(Target); - TransmitRate == 80.0; -} - -private pattern spacecraftUplink(Spacecraft : Spacecraft, TargetSubsystem : CommSubsystem, Target : CommunicatingElement) { - CommunicatingElement.commSubsystem.target(Spacecraft, TargetSubsystem); - CommunicatingElement.commSubsystem(Target, TargetSubsystem); -} - -// Cost - -pattern costMetric(Cost : java Double) { - Cost == sum find missionCost(_, #_); -} - -private pattern missionCost(Mission : InterferometryMission, Cost : java Double) { - InterferometryMission.observationTime(Mission, ObservationTime); - SpacecraftCost == sum find spacecraftCost(Mission, _, #_); - Cost == eval(SpacecraftCost + 100000.0 * ObservationTime); -} - -private pattern spacecraftCost(Mission : InterferometryMission, Spacecraft : Spacecraft, Cost : java Double) { - ConstellationMission.spacecraft(Mission, Spacecraft); - find spacecraftOfKindCount(Spacecraft, KindCount); - find basePrice(Spacecraft, BasePrice); - find interferometryPayloadCost(Spacecraft, InterferometryPayloadCost); - find additionalCommSubsystemCost(Spacecraft, AdditionalCommSubsystemCost); - Cost == eval(BasePrice * Math.pow(KindCount, -0.25) + InterferometryPayloadCost + AdditionalCommSubsystemCost); -} - -private pattern spacecraftOfKindCount(Sat : Spacecraft, Count : java Integer) { - CubeSat3U(Sat); - Count == count find cubeSat3U(_); -} or { - CubeSat6U(Sat); - Count == count find cubeSat6U(_); -} or { - SmallSat(Sat); - Count == count find smallSat(_); -} - -private pattern basePrice(Spacecraft : Spacecraft, BasePrice : java Double) { - CubeSat3U(Spacecraft); - BasePrice == 250000.0; -} or { - CubeSat6U(Spacecraft); - BasePrice == 750000.0; -} or { - SmallSat(Spacecraft); - BasePrice == 3000000.0; -} - -private pattern interferometryPayloadCost(Spacecraft : Spacecraft, Cost : java Double) { - find spacecraftWithInterferometryPayload(_, Spacecraft); - Cost == 50000.0; -} or { - neg find spacecraftWithInterferometryPayload(_, Spacecraft); - Cost == 0.0; -} - -private pattern additionalCommSubsystemCost(Spacecraft : Spacecraft, Cost : java Double) { - find spacecraftWithTwoCommSubsystems(Spacecraft); - Cost == 100000.0; -} or { - neg find spacecraftWithTwoCommSubsystems(Spacecraft); - Cost == 0.0; -} - -private pattern spacecraftWithTwoCommSubsystems(Spacecraft : Spacecraft) { - Spacecraft.commSubsystem(Spacecraft, Subsystem1); - Spacecraft.commSubsystem(Spacecraft, Subsystem2); - Subsystem1 != Subsystem2; -} +//pattern coverageMetric(Coverage : java Double) { +// Coverage == sum find missionCoverage(_, #_); +//} +// +//private pattern missionCoverage(Mission : InterferometryMission, Coverage : java Double) { +// InterferometryMission.observationTime(Mission, ObservationTime); +// ObserverCount == count find spacecraftWithInterferometryPayload(Mission, _); +// Coverage == eval(Math.pow(1 - 2.0 / ObserverCount, 1 + 9 * (1.0 / ObservationTime)) + 0.05 * ObservationTime / 3); +//} +// +//// Time +// +//pattern timeMetric(Time : java Double) { +// Time == sum find missionTime(_, #_); +//} +// +//private pattern missionTime(Mission : InterferometryMission, Time : java Double) { +// InterferometryMission.observationTime(Mission, ObservationTime); +// TrasmitTime == sum find transmitTime(Mission, _, #_); +// Time == eval(TrasmitTime + 60.0 * ObservationTime); +//} +// +//private pattern transmitTime(Mission : InterferometryMission, Spacecraft : Spacecraft, TransmitTime : java Double) { +// ConstellationMission.spacecraft(Mission, Spacecraft); +// find scienceData(Spacecraft, ScienceData); +// IncomingData == sum find incomingData(Spacecraft, _, #_); +// find transmitRate(Spacecraft, TransmitRate); +// TransmitTime == eval((ScienceData + IncomingData) / (7.5 * TransmitRate)); +//} +// +//private pattern incomingData(Spacecraft : Spacecraft, Source : Spacecraft, Data : java Double) { +// find indirectCommunicationLink(Source, Spacecraft); +// find scienceData(Source, Data); +//} +// +//private pattern scienceData(Spacecraft : Spacecraft, Data : java Double) { +// ConstellationMission.spacecraft(Mission, Spacecraft); +// InterferometryMission.observationTime(Mission, ObservationTime); +// Data == eval(12.0 * ObservationTime); +//} +// +//private pattern transmitRate(Spacecraft : Spacecraft, TransmitRate : java Double) { +// find spacecraftUplink(Spacecraft, Comm, Target); +// UHFCommSubsystem(Comm); +// Spacecraft(Target); +// TransmitRate == 5.0; +//} or { +// find spacecraftUplink(Spacecraft, Comm, Target); +// XCommSubsystem(Comm); +// Spacecraft(Target); +// TransmitRate == 1.6; +//} or { +// find spacecraftUplink(Spacecraft, Comm, Target); +// XCommSubsystem(Comm); +// GroundStationNetwork(Target); +// TransmitRate == 0.7; +//} or { +// find spacecraftUplink(Spacecraft, Comm, Target); +// KaCommSubsystem(Comm); +// Spacecraft(Target); +// TransmitRate == 220.0; +//} or { +// find spacecraftUplink(Spacecraft, Comm, Target); +// KaCommSubsystem(Comm); +// GroundStationNetwork(Target); +// TransmitRate == 80.0; +//} +// +//private pattern spacecraftUplink(Spacecraft : Spacecraft, TargetSubsystem : CommSubsystem, Target : CommunicatingElement) { +// CommunicatingElement.commSubsystem.target(Spacecraft, TargetSubsystem); +// CommunicatingElement.commSubsystem(Target, TargetSubsystem); +//} +// +//// Cost +// +//pattern costMetric(Cost : java Double) { +// Cost == sum find missionCost(_, #_); +//} +// +//private pattern missionCost(Mission : InterferometryMission, Cost : java Double) { +// InterferometryMission.observationTime(Mission, ObservationTime); +// SpacecraftCost == sum find spacecraftCost(Mission, _, #_); +// Cost == eval(SpacecraftCost + 100000.0 * ObservationTime); +//} +// +//private pattern spacecraftCost(Mission : InterferometryMission, Spacecraft : Spacecraft, Cost : java Double) { +// ConstellationMission.spacecraft(Mission, Spacecraft); +// find spacecraftOfKindCount(Spacecraft, KindCount); +// find basePrice(Spacecraft, BasePrice); +// find interferometryPayloadCost(Spacecraft, InterferometryPayloadCost); +// find additionalCommSubsystemCost(Spacecraft, AdditionalCommSubsystemCost); +// Cost == eval(BasePrice * Math.pow(KindCount, -0.25) + InterferometryPayloadCost + AdditionalCommSubsystemCost); +//} +// +//private pattern spacecraftOfKindCount(Sat : Spacecraft, Count : java Integer) { +// CubeSat3U(Sat); +// Count == count find cubeSat3U(_); +//} or { +// CubeSat6U(Sat); +// Count == count find cubeSat6U(_); +//} or { +// SmallSat(Sat); +// Count == count find smallSat(_); +//} +// +//private pattern basePrice(Spacecraft : Spacecraft, BasePrice : java Double) { +// CubeSat3U(Spacecraft); +// BasePrice == 250000.0; +//} or { +// CubeSat6U(Spacecraft); +// BasePrice == 750000.0; +//} or { +// SmallSat(Spacecraft); +// BasePrice == 3000000.0; +//} +// +//private pattern interferometryPayloadCost(Spacecraft : Spacecraft, Cost : java Double) { +// find spacecraftWithInterferometryPayload(_, Spacecraft); +// Cost == 50000.0; +//} or { +// neg find spacecraftWithInterferometryPayload(_, Spacecraft); +// Cost == 0.0; +//} +// +//private pattern additionalCommSubsystemCost(Spacecraft : Spacecraft, Cost : java Double) { +// find spacecraftWithTwoCommSubsystems(Spacecraft); +// Cost == 100000.0; +//} or { +// neg find spacecraftWithTwoCommSubsystems(Spacecraft); +// Cost == 0.0; +//} +// +//private pattern spacecraftWithTwoCommSubsystems(Spacecraft : Spacecraft) { +// Spacecraft.commSubsystem(Spacecraft, Subsystem1); +// Spacecraft.commSubsystem(Spacecraft, Subsystem2); +// Subsystem1 != Subsystem2; +//} diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/.CostObjective.xtendbin b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/.CostObjective.xtendbin index 9d4649e5..f8273db1 100644 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/.CostObjective.xtendbin and b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/.CostObjective.xtendbin differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/.LocalSearchEngineManager.xtendbin b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/.LocalSearchEngineManager.xtendbin index 9c013962..b92afd88 100644 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/.LocalSearchEngineManager.xtendbin and b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/.LocalSearchEngineManager.xtendbin differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/.PatternMatchConstraint.xtendbin b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/.PatternMatchConstraint.xtendbin index 4eaa04bd..3b6e5310 100644 Binary files a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/.PatternMatchConstraint.xtendbin and b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/.PatternMatchConstraint.xtendbin differ diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/CostObjective.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/CostObjective.java deleted file mode 100644 index 8659913c..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/satellite/mdeo/CostObjective.java +++ /dev/null @@ -1,16 +0,0 @@ -package hu.bme.mit.inf.dslreasoner.domains.satellite.mdeo; - -import hu.bme.mit.inf.dslreasoner.domains.satellite.mdeo.MetricBasedGuidanceFunction; -import hu.bme.mit.inf.dslreasoner.domains.satellite.queries.CostMetric; - -@SuppressWarnings("all") -public class CostObjective extends MetricBasedGuidanceFunction { - public CostObjective() { - super(CostMetric.instance()); - } - - @Override - public String getName() { - return "Cost"; - } -} diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/Descriptor.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/Descriptor.xtend index 41482b28..c7c1ad77 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/Descriptor.xtend +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/Descriptor.xtend @@ -4,10 +4,21 @@ import java.util.HashMap import java.util.Map import java.util.Set import org.eclipse.xtend.lib.annotations.Data +import org.eclipse.xtend2.lib.StringConcatenationClient @Data abstract class AbstractNodeDescriptor { long dataHash - + + protected def StringConcatenationClient prettyPrint() { + '''(«dataHash»)[«class.simpleName»]''' + } + + override toString() { + ''' + «prettyPrint» + ''' + } + // @Pure // @Override // override public boolean equals(Object obj) { @@ -24,34 +35,41 @@ import org.eclipse.xtend.lib.annotations.Data // } } -@Data class LocalNodeDescriptor extends AbstractNodeDescriptor{ +@Data class LocalNodeDescriptor extends AbstractNodeDescriptor { Set types String id; + new(String id, Set types) { - super(calcualteDataHash(id,types)) + super(calcualteDataHash(id, types)) this.types = types this.id = id } - + def private static calcualteDataHash(String id, Set types) { val int prime = 31; var result = 0 - if(id !== null) - result = id.hashCode(); - if(types !== null) { - result = prime * result + types.hashCode - } - return result + if (id !== null) + result = id.hashCode(); + if (types !== null) { + result = prime * result + types.hashCode + } + return result } - + override hashCode() { return this.dataHash.hashCode } - + + override protected prettyPrint() { + '''(«dataHash»)[«IF id !== null»id = "«id»"«IF types === null || !types.empty», «ENDIF»«ENDIF»«IF types === null»TYPES = null«ELSE»«FOR type : types SEPARATOR ", "»«type»«ENDFOR»«ENDIF»]''' + } + override toString() { - return class.name + this.dataHash + ''' + «prettyPrint» + ''' } - + // @Pure // @Override // override public boolean equals(Object obj) { @@ -66,7 +84,6 @@ import org.eclipse.xtend.lib.annotations.Data // return false; // return true; // } - // @Pure // override public boolean equals(Object obj) { // if (this === obj) @@ -97,49 +114,70 @@ import org.eclipse.xtend.lib.annotations.Data String type } -@Data class FurtherNodeDescriptor extends AbstractNodeDescriptor{ - - NodeRep previousRepresentation - Map,Integer> incomingEdges - Map,Integer> outgoingEdges - - new( - NodeRep previousRepresentation, - Map,Integer> incomingEdges, - Map,Integer> outgoingEdges) - { - super(calculateDataHash(previousRepresentation,incomingEdges,outgoingEdges)) - this.previousRepresentation = previousRepresentation - this.incomingEdges = new HashMap(incomingEdges) - this.outgoingEdges = new HashMap(outgoingEdges) - } - - static def private int calculateDataHash( - NodeRep previousRepresentation, - Map,Integer> incomingEdges, - Map,Integer> outgoingEdges) - { - val int prime = 31; - var int result = previousRepresentation.hashCode; - if(incomingEdges !== null) - result = prime * result + incomingEdges.hashCode(); - if(outgoingEdges !== null) - result = prime * result + outgoingEdges.hashCode(); - return result; - } - - override hashCode() { - return this.dataHash.hashCode +@Data class FurtherNodeDescriptor extends AbstractNodeDescriptor { + + NodeRep previousRepresentation + Map, Integer> incomingEdges + Map, Integer> outgoingEdges + + new(NodeRep previousRepresentation, Map, Integer> incomingEdges, + Map, Integer> outgoingEdges) { + super(calculateDataHash(previousRepresentation, incomingEdges, outgoingEdges)) + this.previousRepresentation = previousRepresentation + this.incomingEdges = new HashMap(incomingEdges) + this.outgoingEdges = new HashMap(outgoingEdges) } - + + static def private int calculateDataHash(NodeRep previousRepresentation, + Map, Integer> incomingEdges, Map, Integer> outgoingEdges) { + val int prime = 31; + var int result = previousRepresentation.hashCode; + if (incomingEdges !== null) + result = prime * result + incomingEdges.hashCode(); + if (outgoingEdges !== null) + result = prime * result + outgoingEdges.hashCode(); + return result; + } + + override hashCode() { + return this.dataHash.hashCode + } + + override prettyPrint() { + ''' + («dataHash»)[ + PREV = «previousRepresentation?.prettyPrint» + «IF incomingEdges === null» + IN null + «ELSE» + «FOR edge : incomingEdges.entrySet» + IN «edge.value» «edge.key.type» = «edge.key.from.prettyPrint» + «ENDFOR» + «ENDIF» + «IF outgoingEdges === null» + OUT null + «ELSE» + «FOR edge : outgoingEdges.entrySet» + OUT «edge.value» «edge.key.type» = «edge.key.to.prettyPrint» + «ENDFOR» + «ENDIF» + ]''' + } + + private def StringConcatenationClient prettyPrint(NodeRep rep) { + if (rep instanceof AbstractNodeDescriptor) { + rep.prettyPrint + } else { + '''«rep»''' + } + } + override toString() { - return class.name + dataHash -// return '''[«previousRepresentation»,(«FOR -// in: incomingEdges.entrySet»(«in.key.type.name»=«in.key.from»,«in.value»)«ENDFOR»),(«FOR -// out: outgoingEdges.entrySet»(«out.key.type.name»=«out.key.to»,«out.value»)«ENDFOR»),«FOR -// att: attributeValues»(«att.type.name»=«att.value»)«ENDFOR»]''' + ''' + «prettyPrint» + ''' } - + // @Pure // @Override // override public boolean equals(Object obj) { @@ -154,7 +192,6 @@ import org.eclipse.xtend.lib.annotations.Data // return false; // return true; // } - // @Pure // override public boolean equals(Object obj) { // if (this === obj) @@ -191,24 +228,23 @@ import org.eclipse.xtend.lib.annotations.Data // return true; // } } - /* -@Data -class ModelDescriptor { - int dataHash - int unknownElements - Map knownElements - - public new(Map knownElements, int unknownElements) { - this.dataHash = calculateDataHash(knownElements,unknownElements) - this.unknownElements = unknownElements - this.knownElements = knownElements - } - - def private static calculateDataHash(Map knownElements, int unknownElements) - { - val int prime = 31; - return knownElements.hashCode * prime + unknownElements.hashCode - } -} -*/ \ No newline at end of file + * @Data + * class ModelDescriptor { + * int dataHash + * int unknownElements + * Map knownElements + * + * public new(Map knownElements, int unknownElements) { + * this.dataHash = calculateDataHash(knownElements,unknownElements) + * this.unknownElements = unknownElements + * this.knownElements = knownElements + * } + * + * def private static calculateDataHash(Map knownElements, int unknownElements) + * { + * val int prime = 31; + * return knownElements.hashCode * prime + unknownElements.hashCode + * } + * } + */ diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/NeighbourhoodOptions.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/NeighbourhoodOptions.xtend new file mode 100644 index 00000000..efc89803 --- /dev/null +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/NeighbourhoodOptions.xtend @@ -0,0 +1,22 @@ +package hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood + +import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.RelationDeclaration +import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.TypeDeclaration +import java.util.Set +import org.eclipse.xtend.lib.annotations.Data + +@Data +class NeighbourhoodOptions { + public static val FixPointRage = -1 + public static val GraphWidthRange = -2 + public static val FullParallels = Integer.MAX_VALUE + public static val MaxNumbers = Integer.MAX_VALUE + + public static val DEFAULT = new NeighbourhoodOptions(GraphWidthRange, FullParallels, MaxNumbers, null, null) + + val int range + val int parallels + val int maxNumber + val Set relevantTypes + val Set relevantRelations +} 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 6dc40705..54b0f54a 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 @@ -4,32 +4,34 @@ import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.DefinedElement import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.RelationDeclaration import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.TypeDeclaration import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.BinaryElementRelationLink +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialComplexTypeInterpretation import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialInterpretation +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialPrimitiveInterpretation +import java.util.ArrayList import java.util.HashMap import java.util.HashSet -import java.util.LinkedList import java.util.List import java.util.Map import java.util.Set import static extension hu.bme.mit.inf.dslreasoner.util.CollectionsUtil.* -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialPrimitiveInterpretation -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialComplexTypeInterpretation -abstract class PartialInterpretation2NeighbourhoodRepresentation { - private val boolean deepRepresentation - private val boolean mergeSimilarNeighbourhood +abstract class PartialInterpretation2NeighbourhoodRepresentation { + val boolean deepRepresentation + val boolean mergeSimilarNeighbourhood protected new(boolean deeprepresentation, boolean mergeSimilarNeighbourhood) { this.deepRepresentation = deeprepresentation this.mergeSimilarNeighbourhood = mergeSimilarNeighbourhood } - - public static val FixPointRage = -1 - public static val GraphWidthRange = -2 - public static val FullParallels = Integer.MAX_VALUE - public static val MaxNumbers = Integer.MAX_VALUE - + + public static val FixPointRage = NeighbourhoodOptions.FixPointRage + public static val GraphWidthRange = NeighbourhoodOptions.GraphWidthRange + public static val FullParallels = NeighbourhoodOptions.FullParallels + public static val MaxNumbers = NeighbourhoodOptions.MaxNumbers + + static val FOCUSED_ELEMENT_NAME = "<>" + /** * Creates a neighbourhood representation with traces * @param model The model to be represented. @@ -37,10 +39,15 @@ abstract class PartialInterpretation2NeighbourhoodRepresentation relevantTypes, Set relevantRelations) - { + def createRepresentation(PartialInterpretation model, int range, int parallels, int maxNumber, + Set relevantTypes, Set relevantRelations) { + createRepresentationWithFocus(model, range, parallels, maxNumber, relevantTypes, relevantRelations, null) + } + + def createRepresentationWithFocus(PartialInterpretation model, NeighbourhoodOptions options, + DefinedElement focusedElement) { + createRepresentationWithFocus(model, options.range, options.parallels, options.maxNumber, options.relevantTypes, + options.relevantRelations, focusedElement) + } + + def createRepresentationWithFocus(PartialInterpretation model, int range, int parallels, int maxNumber, + Set relevantTypes, Set relevantRelations, DefinedElement focusedElement) { val Map> types = new HashMap - fillTypes(model,types,relevantTypes) + fillTypes(model, types, relevantTypes) val Map>> IncomingRelations = new HashMap; val Map>> OutgoingRelations = new HashMap; - fillReferences(model,IncomingRelations,OutgoingRelations,relevantRelations) - - val res = doRecursiveNeighbourCalculation(model,types,IncomingRelations,OutgoingRelations,range,parallels,maxNumber); - + fillReferences(model, IncomingRelations, OutgoingRelations, relevantRelations) + + val res = doRecursiveNeighbourCalculation(model, types, IncomingRelations, OutgoingRelations, range, parallels, + maxNumber, focusedElement); + return res; } - + def private isRelevant(TypeDeclaration t, Set relevantTypes) { - if(relevantTypes === null) { + if (relevantTypes === null) { return true } else { return relevantTypes.contains(t) } } + def private isRelevant(RelationDeclaration r, Set relevantRelations) { - if(relevantRelations === null) { + if (relevantRelations === null) { return true } else { return relevantRelations.contains(r) } } + /** - * Gets the largest + * Gets the minimal neighbourhood size such that every reachable node appears in the shape of every other at least once. */ def private getWidth(Map> types, Map>> IncomingRelations, - Map>> OutgoingRelations) - { - val elements = types.keySet - val Map> reachable = new HashMap - for(element : elements) { + Map>> OutgoingRelations) { + val elements = types.keySet + var Map> reachable = new HashMap + var Map> newReachable = new HashMap + for (element : elements) { val set = new HashSet set.add(element) - reachable.put(element,set) + reachable.put(element, new HashSet) + newReachable.put(element, set) } - + var int width = 0 var boolean newAdded do { + var tmp = reachable + reachable = newReachable + newReachable = tmp newAdded = false - for(element : elements) { + for (element : elements) { val elementNeigbours = element.lookup(reachable) - val size = elementNeigbours.size - for(incoming : element.lookup(IncomingRelations)) { - elementNeigbours.addAll(incoming.from.lookup(reachable)) + val newElementNeigbours = element.lookup(newReachable) + newElementNeigbours.addAll(elementNeigbours) + for (incoming : element.lookup(IncomingRelations)) { + newElementNeigbours.addAll(incoming.from.lookup(reachable)) } - for(outgoing : element.lookup(OutgoingRelations)) { - elementNeigbours.addAll(outgoing.to.lookup(reachable)) + for (outgoing : element.lookup(OutgoingRelations)) { + newElementNeigbours.addAll(outgoing.to.lookup(reachable)) } - newAdded = newAdded || (elementNeigbours.size > size) + newAdded = newAdded || (newElementNeigbours.size > elementNeigbours.size) } - - width +=1 - } while(newAdded) + + width += 1 + } while (newAdded) return width } - + /** * Creates a neighbourhood representation with traces * @param model The model to be represented. @@ -122,68 +145,71 @@ abstract class PartialInterpretation2NeighbourhoodRepresentation doRecursiveNeighbourCalculation( - PartialInterpretation model, - Map> types, + def private NeighbourhoodWithTraces doRecursiveNeighbourCalculation( + PartialInterpretation model, Map> types, Map>> IncomingRelations, - Map>> OutgoingRelations, - int range, int parallels, int maxNumber) - { - if(range == 0){ - val r = calculateLocalNodeDescriptors(model,types,maxNumber) - val res = this.createLocalRepresentation(r.value,r.key) - if(res.modelRepresentation === null) { + Map>> OutgoingRelations, int range, int parallels, + int maxNumber, DefinedElement focusedElement) { + if (range == 0) { + val r = calculateLocalNodeDescriptors(model, types, maxNumber, focusedElement) + val res = this.createLocalRepresentation(r.value, r.key) + if (res.modelRepresentation === null) { throw new IllegalArgumentException('''Model representation is null''') - } else if(res.nodeRepresentations === null || res.nodeRepresentations.empty) { + } else if (res.nodeRepresentations === null || res.nodeRepresentations.empty) { throw new IllegalArgumentException('''No node representation''') - } else if(res.previousRepresentation !== null) { + } else if (res.previousRepresentation !== null) { throw new IllegalArgumentException('''The previous representation of the first neighbourhood have to be null''') - } else return res - } else if(range > 0) { - val previous = doRecursiveNeighbourCalculation(model,types,IncomingRelations,OutgoingRelations,range-1,parallels,maxNumber) - val r = calculateFurtherNodeDescriptors(model,previous,IncomingRelations,OutgoingRelations,parallels,maxNumber) - //println('''Level «range» finished.''') - val res = createFurtherRepresentation(r.key,r.value,previous,deepRepresentation) - if(res.modelRepresentation === null) { + } else + return res + } else if (range > 0) { + val previous = doRecursiveNeighbourCalculation(model, types, IncomingRelations, OutgoingRelations, + range - 1, parallels, maxNumber, focusedElement) + val r = calculateFurtherNodeDescriptors(model, previous, IncomingRelations, OutgoingRelations, parallels, + maxNumber) + // println('''Level «range» finished.''') + val res = createFurtherRepresentation(r.key, r.value, previous, deepRepresentation) + if (res.modelRepresentation === null) { throw new IllegalArgumentException('''Model representation is null''') - } else if(res.nodeRepresentations === null || res.nodeRepresentations.empty) { + } else if (res.nodeRepresentations === null || res.nodeRepresentations.empty) { throw new IllegalArgumentException('''No node representation''') - } else if(res.previousRepresentation === null && deepRepresentation) { + } else if (res.previousRepresentation === null && deepRepresentation) { throw new IllegalArgumentException('''Need previous representations''') - } else return res + } else + return res } else if (range == FixPointRage) { - return refineUntilFixpoint(model,types,IncomingRelations,OutgoingRelations,parallels,maxNumber) + return refineUntilFixpoint(model, types, IncomingRelations, OutgoingRelations, parallels, maxNumber, + focusedElement) } else if (range == GraphWidthRange) { - val width = this.getWidth(types,IncomingRelations,OutgoingRelations) - //println(width) - return doRecursiveNeighbourCalculation(model,types,IncomingRelations,OutgoingRelations,width,parallels,maxNumber) + val width = this.getWidth(types, IncomingRelations, OutgoingRelations) + // println(width) + return doRecursiveNeighbourCalculation(model, types, IncomingRelations, OutgoingRelations, width, parallels, + maxNumber, focusedElement) } } - - def private refineUntilFixpoint( - PartialInterpretation model, - Map> types, + + def private refineUntilFixpoint(PartialInterpretation model, Map> types, Map>> IncomingRelations, - Map>> OutgoingRelations, - int parallels, int maxNumbers) - { + Map>> OutgoingRelations, int parallels, int maxNumbers, + DefinedElement focusedElement) { var lastRange = 0 - val last = calculateLocalNodeDescriptors(model,types,maxNumbers) - var lastRepresentation = this.createLocalRepresentation(last.value,last.key) - //println('''Level 0 finished.''') + val last = calculateLocalNodeDescriptors(model, types, maxNumbers, focusedElement) + var lastRepresentation = this.createLocalRepresentation(last.value, last.key) + // println('''Level 0 finished.''') var boolean hasRefined do { - val nextRange = lastRange+1 - val next = calculateFurtherNodeDescriptors(model,lastRepresentation,IncomingRelations,OutgoingRelations,parallels,maxNumbers) - val nextRepresentation = createFurtherRepresentation(next.key,next.value,lastRepresentation,deepRepresentation) - - val previousNumberOfTypes =lastRepresentation.nodeRepresentations.values.toSet.size + val nextRange = lastRange + 1 + val next = calculateFurtherNodeDescriptors(model, lastRepresentation, IncomingRelations, OutgoingRelations, + parallels, maxNumbers) + val nextRepresentation = createFurtherRepresentation(next.key, next.value, lastRepresentation, + deepRepresentation) + + val previousNumberOfTypes = lastRepresentation.nodeRepresentations.values.toSet.size val nextNumberOfTypes = nextRepresentation.nodeRepresentations.values.toSet.size - hasRefined = nextNumberOfTypes > previousNumberOfTypes - + hasRefined = nextNumberOfTypes > previousNumberOfTypes + lastRange = nextRange lastRepresentation = nextRepresentation - + // if(hasRefined) { // println('''Level «nextRange» is calculated, number of types is refined: «previousNumberOfTypes» -> «nextNumberOfTypes»''') // } else { @@ -192,211 +218,219 @@ abstract class PartialInterpretation2NeighbourhoodRepresentation> node2Type, Set relevantTypes) { - for(element : model.elements) { + + def private fillTypes(PartialInterpretation model, Map> node2Type, + Set relevantTypes) { + for (element : model.elements) { node2Type.put(element, new HashSet) } - + // for(typeDefinition : model.problem.types.filter(TypeDefinition)) { // // Dont need // } - for(typeInterpretation : model.partialtypeinterpratation) { - if(typeInterpretation instanceof PartialPrimitiveInterpretation) { - - } else if(typeInterpretation instanceof PartialComplexTypeInterpretation) { + for (typeInterpretation : model.partialtypeinterpratation) { + if (typeInterpretation instanceof PartialPrimitiveInterpretation) { + } else if (typeInterpretation instanceof PartialComplexTypeInterpretation) { val type = typeInterpretation.interpretationOf - if(type.isRelevant(relevantTypes)) { - for(element : typeInterpretation.elements) { + if (type.isRelevant(relevantTypes)) { + for (element : typeInterpretation.elements) { element.lookup(node2Type).add(type.name) } } } } } - + /** * Indexes the references */ def private fillReferences(PartialInterpretation model, Map>> IncomingRelations, Map>> OutgoingRelations, - Set relevantRelations) - { - for(object : model.elements) { - IncomingRelations.put(object,new LinkedList) - OutgoingRelations.put(object,new LinkedList) + Set relevantRelations) { + for (object : model.elements) { + IncomingRelations.put(object, new ArrayList) + OutgoingRelations.put(object, new ArrayList) } - for(relationInterpretation : model.partialrelationinterpretation) { + for (relationInterpretation : model.partialrelationinterpretation) { val type = relationInterpretation.interpretationOf - if(type.isRelevant(relevantRelations)) { - for(link : relationInterpretation.relationlinks) { - if(link instanceof BinaryElementRelationLink) { - OutgoingRelations.get(link.param1) += new OutgoingRelation(link.param2,type.name) - IncomingRelations.get(link.param2) += new IncomingRelation(link.param1,type.name) - } else throw new UnsupportedOperationException + if (type.isRelevant(relevantRelations)) { + for (link : relationInterpretation.relationlinks) { + if (link instanceof BinaryElementRelationLink) { + OutgoingRelations.get(link.param1) += new OutgoingRelation(link.param2, type.name) + IncomingRelations.get(link.param2) += new IncomingRelation(link.param1, type.name) + } else + throw new UnsupportedOperationException } } } } - + /** * Creates a local representation of the objects (aka zero range neighbourhood) */ - def abstract protected NeighbourhoodWithTraces createLocalRepresentation( + def abstract protected NeighbourhoodWithTraces createLocalRepresentation( Map node2Representation, Map representation2Amount ) - + /** * Creates a */ - def abstract protected NeighbourhoodWithTraces createFurtherRepresentation( + def abstract protected NeighbourhoodWithTraces createFurtherRepresentation( Map, Integer> nodeDescriptors, Map> node2Representation, - NeighbourhoodWithTraces previous, + NeighbourhoodWithTraces previous, boolean deepRepresentation ) - + def private addOne(int original, int max) { if(original == Integer.MAX_VALUE) return Integer.MAX_VALUE - if(original +1 > max) return Integer.MAX_VALUE - else return original+1 + if(original + 1 > max) return Integer.MAX_VALUE else return original + 1 } - + private def calculateIncomingEdges(Map>> IncomingRelations, - DefinedElement object, Map previousNodeRepresentations, int parallel) - { + DefinedElement object, Map previousNodeRepresentations, + int parallel) { val Map, Integer> res = new HashMap for (incomingConcreteEdge : IncomingRelations.get(object)) { val IncomingRelation e = new IncomingRelation( previousNodeRepresentations.get(incomingConcreteEdge.from), incomingConcreteEdge.type) if (res.containsKey(e)) { - res.put(e, addOne(res.get(e),parallel)) + res.put(e, addOne(res.get(e), parallel)) } else { res.put(e, 1) } } return res } - - private def calcuateOutgoingEdges(Map>> OutgoingRelations, - DefinedElement object, Map previousNodeRepresentations, int parallel) - { - val Map,Integer> res= new HashMap - for(outgoingConcreteEdge : OutgoingRelations.get(object)) { - val OutgoingRelation e = - new OutgoingRelation( - previousNodeRepresentations.get(outgoingConcreteEdge.to), - outgoingConcreteEdge.type) - if(res.containsKey(e)) { - res.put(e,addOne(res.get(e),parallel)) + + private def calcuateOutgoingEdges(Map>> OutgoingRelations, + DefinedElement object, Map previousNodeRepresentations, + int parallel) { + val Map, Integer> res = new HashMap + for (outgoingConcreteEdge : OutgoingRelations.get(object)) { + val OutgoingRelation e = new OutgoingRelation( + previousNodeRepresentations.get(outgoingConcreteEdge.to), outgoingConcreteEdge.type) + if (res.containsKey(e)) { + res.put(e, addOne(res.get(e), parallel)) } else { - res.put(e,1) + res.put(e, 1) } } return res; } - + /*def private void addOrCreate_Set(Map> map, KEY key, VALUE value) { - var Set s; - if(map.containsKey(key)) { - s = map.get(key); - } else { - s = new HashSet - map.put(key,s) - } - s.add(value) - }*/ - - - private def calculateFurtherNodeDescriptors( - PartialInterpretation model, + * var Set s; + * if(map.containsKey(key)) { + * s = map.get(key); + * } else { + * s = new HashSet + * map.put(key,s) + * } + * s.add(value) + }*/ + private def calculateFurtherNodeDescriptors(PartialInterpretation model, NeighbourhoodWithTraces previous, Map>> IncomingRelations, - Map>> OutgoingRelations, - int parallels, int maxNumber) - { + Map>> OutgoingRelations, int parallels, int maxNumber) { val previousNodeRepresentations = previous.nodeRepresentations - val node2Representation = new HashMap> - val Map,Integer> descriptor2Number = - if(this.mergeSimilarNeighbourhood){ new HashMap } else { null } - val Map,FurtherNodeDescriptor> uniqueDescription = - if(this.mergeSimilarNeighbourhood){ new HashMap } else { null } - - for(object: model.elements) { - val incomingEdges = this.calculateIncomingEdges(IncomingRelations, object, previousNodeRepresentations,parallels) - val outgoingEdges = this.calcuateOutgoingEdges(OutgoingRelations,object, previousNodeRepresentations,parallels) - + val node2Representation = new HashMap> + val Map, Integer> descriptor2Number = if (this. + mergeSimilarNeighbourhood) { + new HashMap + } else { + null + } + val Map, FurtherNodeDescriptor> uniqueDescription = if (this. + mergeSimilarNeighbourhood) { + new HashMap + } else { + null + } + + for (object : model.elements) { + val incomingEdges = this.calculateIncomingEdges(IncomingRelations, object, previousNodeRepresentations, + parallels) + val outgoingEdges = this.calcuateOutgoingEdges(OutgoingRelations, object, previousNodeRepresentations, + parallels) + val previousType = previousNodeRepresentations.get(object) - - if(previousType === null) { + + if (previousType === null) { println("Error in state coder") } - - val nodeDescriptor = new FurtherNodeDescriptor( - previousType, - incomingEdges, - outgoingEdges) - - if(this.mergeSimilarNeighbourhood) { - if(descriptor2Number.containsKey(nodeDescriptor)) { + + val nodeDescriptor = new FurtherNodeDescriptor(previousType, incomingEdges, outgoingEdges) + + if (this.mergeSimilarNeighbourhood) { + if (descriptor2Number.containsKey(nodeDescriptor)) { descriptor2Number.put( nodeDescriptor, - addOne(descriptor2Number.get(nodeDescriptor),maxNumber) + addOne(descriptor2Number.get(nodeDescriptor), maxNumber) ) - node2Representation.put(object,uniqueDescription.get(nodeDescriptor)) + node2Representation.put(object, uniqueDescription.get(nodeDescriptor)) } else { - descriptor2Number.put(nodeDescriptor,if(1>maxNumber){Integer.MAX_VALUE}else{1}) - uniqueDescription.put(nodeDescriptor,nodeDescriptor) - node2Representation.put(object,nodeDescriptor) + descriptor2Number.put(nodeDescriptor, if (1 > maxNumber) { + Integer.MAX_VALUE + } else { + 1 + }) + uniqueDescription.put(nodeDescriptor, nodeDescriptor) + node2Representation.put(object, nodeDescriptor) } } else { - node2Representation.put(object,nodeDescriptor) + node2Representation.put(object, nodeDescriptor) } } - + return descriptor2Number -> node2Representation } - - private def calculateLocalNodeDescriptors( - PartialInterpretation model, - Map> types, - int maxNumber) - { + + private def calculateLocalNodeDescriptors(PartialInterpretation model, Map> types, + int maxNumber, DefinedElement focusedElement) { val Map node2Representation = new HashMap - val Map representation2Amount = - if(mergeSimilarNeighbourhood){ new HashMap } else { null } - val Map uniqueRepresentation = - if(this.mergeSimilarNeighbourhood){ new HashMap } else { null } - - for(element : model.elements) { - var newDescriptor = new LocalNodeDescriptor(element.name,element.lookup(types)) - if(this.mergeSimilarNeighbourhood){ - if(uniqueRepresentation.containsKey(newDescriptor)) { + val Map representation2Amount = if (mergeSimilarNeighbourhood) { + new HashMap + } else { + null + } + val Map uniqueRepresentation = if (this.mergeSimilarNeighbourhood) { + new HashMap + } else { + null + } + + for (element : model.elements) { + val name = if(element == focusedElement) FOCUSED_ELEMENT_NAME else element.name + var newDescriptor = new LocalNodeDescriptor(name, element.lookup(types)) + if (this.mergeSimilarNeighbourhood) { + if (uniqueRepresentation.containsKey(newDescriptor)) { newDescriptor = newDescriptor.lookup(uniqueRepresentation) - node2Representation.put(element,newDescriptor) + node2Representation.put(element, newDescriptor) representation2Amount.put( newDescriptor, - addOne(newDescriptor.lookup(representation2Amount),maxNumber) + addOne(newDescriptor.lookup(representation2Amount), maxNumber) ) } else { - uniqueRepresentation.put(newDescriptor,newDescriptor) - node2Representation.put(element,newDescriptor) - representation2Amount.put(newDescriptor, if(1>maxNumber){Integer.MAX_VALUE}else{1}) + uniqueRepresentation.put(newDescriptor, newDescriptor) + node2Representation.put(element, newDescriptor) + representation2Amount.put(newDescriptor, if (1 > maxNumber) { + Integer.MAX_VALUE + } else { + 1 + }) } } else { - node2Representation.put(element,newDescriptor) + node2Representation.put(element, newDescriptor) } } - + return representation2Amount -> node2Representation } -} \ No newline at end of file +} diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/PartialInterpretation2PairwiseNeighbourhoodRepresentation.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/PartialInterpretation2PairwiseNeighbourhoodRepresentation.xtend new file mode 100644 index 00000000..c10457b0 --- /dev/null +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/neighbourhood/PartialInterpretation2PairwiseNeighbourhoodRepresentation.xtend @@ -0,0 +1,68 @@ +package hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood + +import com.google.common.collect.Maps +import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.DefinedElement +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialInterpretation +import java.util.HashMap +import java.util.Map +import org.eclipse.xtend.lib.annotations.Data +import org.eclipse.xtend.lib.annotations.FinalFieldsConstructor + +@Data +class PairwiseNeighbourhoodRepresentation { + val Map modelRepresentation + val Map basicNodeRepresentations + val Map> pairwiseNodeRepresentations + + def getBasicRepresentation(DefinedElement a) { + basicNodeRepresentations.get(a) + } + + def getPairwiseRepresentation(DefinedElement a, DefinedElement b) { + pairwiseNodeRepresentations.get(a).get(b) + } +} + +@FinalFieldsConstructor +class PartialInterpretation2PairwiseNeighbourhoodRepresentation { + val PartialInterpretation2NeighbourhoodRepresentation, BasicNodeRepresentation> basicNeighbourhoodRepresenter + + def createRepresentation(PartialInterpretation model, NeighbourhoodOptions options) { + val basicRepresentation = basicNeighbourhoodRepresenter.createRepresentation(model, options) + val basicModelRepresentation = basicRepresentation.modelRepresentation + val basicNodeRepresentations = basicRepresentation.nodeRepresentations + val pairwiseNodeRepresentations = Maps.newHashMapWithExpectedSize(basicNodeRepresentations.size) + val modelRepresentation = new HashMap + for (nodeWithBasicRepresentation : basicNodeRepresentations.entrySet) { + val node = nodeWithBasicRepresentation.key + val basicNodeRepresentation = nodeWithBasicRepresentation.value + val count = basicModelRepresentation.get(basicNodeRepresentation) + if (count == 1) { + pairwiseNodeRepresentations.put(node, basicNodeRepresentations) + modelRepresentation.put(basicNodeRepresentation, count) + } else { + val neighbourhoodRepresentation = basicNeighbourhoodRepresenter. + createRepresentationWithFocus(model, options, node) + pairwiseNodeRepresentations.put(node, neighbourhoodRepresentation.nodeRepresentations) + modelRepresentation.compute(neighbourhoodRepresentation.modelRepresentation) [ key, value | + if (value === null) { + if (1 > options.maxNumber) { + Integer.MAX_VALUE + } else { + 1 + } + } else { + addOne(value, options.maxNumber) + } + ] + } + } + new PairwiseNeighbourhoodRepresentation(modelRepresentation, basicNodeRepresentations, + pairwiseNodeRepresentations) + } + + def private addOne(int original, int max) { + if(original == Integer.MAX_VALUE) return Integer.MAX_VALUE + if(original + 1 > max) return Integer.MAX_VALUE else return original + 1 + } +} diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/AbstractNeighborhoodBasedStateCoderFactory.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/AbstractNeighborhoodBasedStateCoderFactory.xtend new file mode 100644 index 00000000..089880b1 --- /dev/null +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/AbstractNeighborhoodBasedStateCoderFactory.xtend @@ -0,0 +1,137 @@ +package hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.statecoder + +import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicProblem +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.NeighbourhoodOptions +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialComplexTypeInterpretation +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialInterpretation +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialPrimitiveInterpretation +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialRelationInterpretation +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialinterpretationPackage +import java.util.LinkedList +import java.util.List +import org.eclipse.emf.common.notify.Notifier +import org.eclipse.emf.ecore.EClass +import org.eclipse.emf.ecore.EObject +import org.eclipse.emf.ecore.EStructuralFeature +import org.eclipse.viatra.dse.statecode.IStateCoder +import org.eclipse.viatra.dse.statecode.IStateCoderFactory +import org.eclipse.viatra.query.runtime.api.IPatternMatch +import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine +import org.eclipse.viatra.query.runtime.base.api.FeatureListener +import org.eclipse.viatra.query.runtime.base.api.IndexingLevel +import org.eclipse.viatra.query.runtime.base.api.InstanceListener +import org.eclipse.viatra.query.runtime.emf.EMFBaseIndexWrapper +import org.eclipse.viatra.query.runtime.emf.EMFScope +import org.eclipse.xtend.lib.annotations.Accessors + +abstract class AbstractNeighbourhoodBasedStateCoderFactory implements IStateCoderFactory { + val List statecoders = new LinkedList + + val NeighbourhoodOptions options + + protected new() { + this(NeighbourhoodOptions.DEFAULT) + } + + protected new(NeighbourhoodOptions options) { + this.options = options + } + + synchronized override createStateCoder() { + val res = doCreateStateCoder(options) + statecoders += res + return res + } + + protected def AbstractNeighbourhoodBasedPartialInterpretationStateCoder doCreateStateCoder( + NeighbourhoodOptions options) + + def getSumStatecoderRuntime() { + statecoders.map[statecoderRuntime].reduce[p1, p2|p1 + p2] + } +} + +abstract class AbstractNeighbourhoodBasedPartialInterpretationStateCoder implements IStateCoder { + val NeighbourhoodOptions options + + var PartialInterpretation target + + protected new(NeighbourhoodOptions options) { + this.options = options + } + + @Accessors(PUBLIC_GETTER) var long statecoderRuntime = 0 + + synchronized private def refreshStateCodes() { + if (refreshNeeded) { + val startTime = System.nanoTime + doRefreshStateCodes(target, options) + statecoderRuntime += (System.nanoTime - startTime) + } + } + + protected def boolean isRefreshNeeded() + + protected def void doRefreshStateCodes(PartialInterpretation target, NeighbourhoodOptions options) + + synchronized override createActivationCode(IPatternMatch match) { + refreshStateCodes + val startTime = System.nanoTime + val code = doCreateActivationCode(match) + statecoderRuntime += (System.nanoTime - startTime) + code + } + + protected def Object doCreateActivationCode(IPatternMatch match) + + synchronized override createStateCode() { + refreshStateCodes + doCreateStateCode + } + + protected def Object doCreateStateCode() + + override init(Notifier notifier) { + this.target = notifier as PartialInterpretation + val queryEngine = ViatraQueryEngine.on(new EMFScope(notifier)) + val baseIndex = queryEngine.getBaseIndex() as EMFBaseIndexWrapper + val navigationHelper = baseIndex.getNavigationHelper(); + + val classes = PartialinterpretationPackage.eINSTANCE.EClassifiers.filter(EClass).toSet + val features = classes.map[it.EAllStructuralFeatures].flatten.toSet + navigationHelper.registerObservedTypes(classes, null, features, IndexingLevel.FULL); + + navigationHelper.addFeatureListener(features, new FeatureListener() { + override void featureInserted(EObject host, EStructuralFeature feature, Object value) { invalidate } + + override void featureDeleted(EObject host, EStructuralFeature feature, Object value) { invalidate } + }) + navigationHelper.addInstanceListener(classes, new InstanceListener() { + override void instanceInserted(EClass clazz, EObject instance) { invalidate } + + override void instanceDeleted(EClass clazz, EObject instance) { invalidate } + }) + } + + synchronized def invalidate() { + doInvalidate + } + + protected def void doInvalidate() + + def protected getFallbackCode(Object o) { + switch (o) { + PartialInterpretation, + LogicProblem: + null + PartialRelationInterpretation: + o.interpretationOf.name + PartialPrimitiveInterpretation: + o.class.simpleName.hashCode + PartialComplexTypeInterpretation: + o.interpretationOf.name.hashCode + default: + throw new UnsupportedOperationException('''Unsupported type: «o.class.simpleName»''') + } + } +} diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/IdentifierBasedStateCoderFactory.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/IdentifierBasedStateCoderFactory.xtend index f55a501a..c7b8ee37 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/IdentifierBasedStateCoderFactory.xtend +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/IdentifierBasedStateCoderFactory.xtend @@ -62,13 +62,13 @@ class IdentifierBasedStateCode { int numberOfNewElement SortedSet relationStatecoders - private static val comparator = new Comparator() { + static val comparator = new Comparator() { override compare(RelationStatecoder o1, RelationStatecoder o2) { o1.relationName.compareTo(o2.relationName) } } - public new(int numberOfNewElements) { + new(int numberOfNewElements) { this.numberOfNewElement = numberOfNewElements this.relationStatecoders = new TreeSet(comparator) } 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 a86bcd1f..4ff39999 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 @@ -1,223 +1,86 @@ package hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.statecoder +import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.DefinedElement import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.AbstractNodeDescriptor +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.NeighbourhoodOptions import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.PartialInterpretation2ImmutableTypeLattice import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialInterpretation -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialinterpretationPackage import java.util.ArrayList -import java.util.LinkedList -import java.util.List import java.util.Map -import org.eclipse.emf.common.notify.Notifier -import org.eclipse.emf.ecore.EClass -import org.eclipse.emf.ecore.EObject -import org.eclipse.emf.ecore.EStructuralFeature -import org.eclipse.viatra.dse.statecode.IStateCoder -import org.eclipse.viatra.dse.statecode.IStateCoderFactory import org.eclipse.viatra.query.runtime.api.IPatternMatch -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine -import org.eclipse.viatra.query.runtime.base.api.FeatureListener -import org.eclipse.viatra.query.runtime.base.api.IndexingLevel -import org.eclipse.viatra.query.runtime.base.api.InstanceListener -import org.eclipse.viatra.query.runtime.emf.EMFBaseIndexWrapper -import org.eclipse.viatra.query.runtime.emf.EMFScope -import org.eclipse.xtend.lib.annotations.Accessors -import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.DefinedElement -import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicProblem -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialTypeInterpratation -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialRelationInterpretation -import java.util.Set -import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.TypeDeclaration -import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.RelationDeclaration -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.PartialInterpretation2NeighbourhoodRepresentation -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialComplexTypeInterpretation -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialPrimitiveInterpretation - -class NeighbourhoodBasedStateCoderFactory implements IStateCoderFactory { - val List statecoders = new LinkedList - - val int range - val int parallels - val int maxNumber - val Set relevantTypes - val Set relevantRelations - - public new() { - this.range = PartialInterpretation2NeighbourhoodRepresentation::GraphWidthRange - this.parallels = PartialInterpretation2NeighbourhoodRepresentation::FullParallels - this.maxNumber = PartialInterpretation2NeighbourhoodRepresentation::MaxNumbers - this.relevantTypes = null - this.relevantRelations = null + +class NeighbourhoodBasedStateCoderFactory extends AbstractNeighbourhoodBasedStateCoderFactory { + new() { } - - public new(int range, int parallels, int maxNumber, Set relevantTypes, Set relevantRelations) { - this.range = range - this.parallels = parallels - this.maxNumber = maxNumber - this.relevantTypes = relevantTypes - this.relevantRelations = relevantRelations + + new(NeighbourhoodOptions options) { + super(options) + } + + override protected doCreateStateCoder(NeighbourhoodOptions options) { + new NeighbourhoodBasedPartialInterpretationStateCoder(options) } - - synchronized override createStateCoder() { - val res = new NeighbourhoodBasedPartialInterpretationStateCoder(statecoders.size, - range,parallels,maxNumber,relevantTypes,relevantRelations) - statecoders += res - return res - } - def getSumStatecoderRuntime() { - statecoders.map[statecoderRuntime].reduce[p1, p2|p1+p2] - } + } -class NeighbourhoodBasedPartialInterpretationStateCoder implements IStateCoder{ - val int id; - val int range - val int parallels - val int maxNumber - val Set relevantTypes - val Set relevantRelations - - val calculator = - new PartialInterpretation2ImmutableTypeLattice - var PartialInterpretation target - - private var Map nodeRepresentations = null - private var Map modelRepresentation = null - - /*public new(int id) { - this.id = id - this.range = PartialInterpretation2NeighbourhoodRepresentation::FixPointRage - this.parallels = PartialInterpretation2NeighbourhoodRepresentation::FullParallels - this.maxNumber = maxNumber = PartialInterpretation2NeighbourhoodRepresentation::MaxNumbers - this.relevantTypes = relevantTypes - this.relevantRelations = relevantRelations - }*/ - - public new(int id, int range, int parallels, int maxNumber, Set relevantTypes, Set relevantRelations) { - this.id = id - this.range = range - this.parallels = parallels - this.maxNumber = maxNumber - this.relevantTypes = relevantTypes - this.relevantRelations = relevantRelations +class NeighbourhoodBasedPartialInterpretationStateCoder extends AbstractNeighbourhoodBasedPartialInterpretationStateCoder { + val calculator = new PartialInterpretation2ImmutableTypeLattice + + var Map nodeRepresentations = null + var Map modelRepresentation = null + + new(NeighbourhoodOptions options) { + super(options) } - - @Accessors(PUBLIC_GETTER) var long statecoderRuntime = 0 - -// val range = -1 -// val par = Integer.MAX_VALUE - //val deeprepresentation = false - - ///////// - // Caching version - ///////// - synchronized private def refreshStateCodes() { - if(this.nodeRepresentations === null || this.modelRepresentation === null) { - val startTime = System.nanoTime - //relevantObjects.forEach[println(it)] - val code = calculator.createRepresentation(target,range,parallels,maxNumber,relevantTypes,relevantRelations) - this.modelRepresentation = code.modelRepresentation - this.nodeRepresentations = code.nodeRepresentations - statecoderRuntime += (System.nanoTime - startTime) - } - } - synchronized override createActivationCode(IPatternMatch match) { - refreshStateCodes - - val startTime = System.nanoTime - val size = match.specification.parameters.size - val res = new ArrayList(size) - var int index = 0 - var int equivalenceHash = 0 - val prime = 31 - - while(index < size) { - res.add(getCode(match.get(index))) - index++ - for(var i = 0; i(res->equivalenceHash).hashCode - } - - - def private getCode(Object o) { - if(o instanceof DefinedElement) { - this.nodeRepresentations.get(o) - } else if(o instanceof PartialInterpretation || o instanceof LogicProblem) { - return null - } else if(o instanceof PartialRelationInterpretation) { - return o.interpretationOf.name - } else if(o instanceof PartialTypeInterpratation) { - if(o instanceof PartialPrimitiveInterpretation) { - o.class.simpleName.hashCode - } else if (o instanceof PartialComplexTypeInterpretation){ - return o.interpretationOf.name.hashCode - } else { - throw new UnsupportedOperationException('''Unsupported type: «o.class.simpleName»''') + + override protected isRefreshNeeded() { + nodeRepresentations === null || modelRepresentation === null + } + + override doRefreshStateCodes(PartialInterpretation target, NeighbourhoodOptions options) { + val code = calculator.createRepresentation(target, options) + modelRepresentation = code.modelRepresentation + nodeRepresentations = code.nodeRepresentations + } + + override doCreateActivationCode(IPatternMatch match) { + val size = match.specification.parameters.size + val res = new ArrayList(size) + var int index = 0 + var int equivalenceHash = 0 + val prime = 31 + + while (index < size) { + res.add(getCode(match.get(index))) + index++ + for (var i = 0; i < index; i++) { + val number = if (match.get(index) === match.get(i)) { + 1 + } else { + 0 + } + equivalenceHash = prime * equivalenceHash + number } - } else { - throw new UnsupportedOperationException('''Unsupported type: «o.class.simpleName»''') } - } - - synchronized override createStateCode() { - refreshStateCodes - return this.modelRepresentation.hashCode - } - ///////// - // Caching version - ///////// - - ///////// - // Recalculating version - ///////// -// synchronized override createActivationCode(IPatternMatch match) { -// val nodes = calculator.createRepresentation(getRelevantObjects().toList,range,par).nodeRepresentations -// val res = match.toArray.map[objectInMatch | -// nodes.get(objectInMatch) -// ] -// return res -// } -// -// override createStateCode() { -// return this.calculator.createRepresentation(getRelevantObjects().toList,range,par).modelRepresentation -// } - ///////// - // Recalculating version - ///////// - - override init(Notifier notifier) { - this.target = notifier as PartialInterpretation - val queryEngine = ViatraQueryEngine.on(new EMFScope(notifier)) - val baseIndex = queryEngine.getBaseIndex() as EMFBaseIndexWrapper - val navigationHelper = baseIndex.getNavigationHelper(); - - val classes = PartialinterpretationPackage.eINSTANCE.EClassifiers.filter(EClass).toSet - val features = classes.map[it.EAllStructuralFeatures].flatten.toSet - navigationHelper.registerObservedTypes( - classes, - null, - features, - IndexingLevel.FULL); - - - navigationHelper.addFeatureListener(features, new FeatureListener() { - override public void featureInserted(EObject host, EStructuralFeature feature, Object value) { invalidate } - override public void featureDeleted(EObject host, EStructuralFeature feature, Object value) { invalidate } - }); - navigationHelper.addInstanceListener(classes, new InstanceListener() { - override public void instanceInserted(EClass clazz, EObject instance) { invalidate } - override public void instanceDeleted(EClass clazz, EObject instance) { invalidate } - }); - } - - synchronized def public invalidate() { - this.nodeRepresentations = null - this.modelRepresentation = null + + match.specification.fullyQualifiedName -> (res -> equivalenceHash).hashCode + } + + def private getCode(Object o) { + switch (o) { + DefinedElement: + nodeRepresentations.get(o) + default: + getFallbackCode(o) + } + } + + override doCreateStateCode() { + modelRepresentation.hashCode + } + + override doInvalidate() { + nodeRepresentations = null + modelRepresentation = null } } diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/PairwiseNeighbourhoodBasedStateCoderFactory.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/PairwiseNeighbourhoodBasedStateCoderFactory.xtend new file mode 100644 index 00000000..84e798f2 --- /dev/null +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage/src/hu/bme/mit/inf/dslreasoner/viatrasolver/partialinterpretationlanguage/statecoder/PairwiseNeighbourhoodBasedStateCoderFactory.xtend @@ -0,0 +1,75 @@ +package hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.statecoder + +import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.DefinedElement +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.AbstractNodeDescriptor +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.NeighbourhoodOptions +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.PairwiseNeighbourhoodRepresentation +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.PartialInterpretation2ImmutableTypeLattice +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.PartialInterpretation2PairwiseNeighbourhoodRepresentation +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialInterpretation +import java.util.ArrayList +import org.eclipse.viatra.query.runtime.api.IPatternMatch + +class PairwiseNeighbourhoodBasedStateCoderFactory extends AbstractNeighbourhoodBasedStateCoderFactory { + new() { + } + + new(NeighbourhoodOptions options) { + super(options) + } + + override protected doCreateStateCoder(NeighbourhoodOptions options) { + new PairwiseNeighbourhoodBasedPartialInterpretationStateCoder(options) + } +} + +class PairwiseNeighbourhoodBasedPartialInterpretationStateCoder extends AbstractNeighbourhoodBasedPartialInterpretationStateCoder { + val calculator = new PartialInterpretation2PairwiseNeighbourhoodRepresentation( + new PartialInterpretation2ImmutableTypeLattice) + var PairwiseNeighbourhoodRepresentation representation + + new(NeighbourhoodOptions options) { + super(options) + } + + override protected isRefreshNeeded() { + representation === null + } + + override protected doRefreshStateCodes(PartialInterpretation target, NeighbourhoodOptions options) { + representation = calculator.createRepresentation(target, options) + } + + override protected doCreateActivationCode(IPatternMatch match) { + val size = match.specification.parameters.size + val res = new ArrayList(size * size) + for (var int i = 0; i < size; i++) { + val a = match.get(i) + for (var int j = 0; j < size; j++) { + val b = match.get(j) + res.add(getPairwiseRepresentation(a, b)) + } + } + match.specification.fullyQualifiedName -> res.hashCode + } + + private def getPairwiseRepresentation(Object a, Object b) { + if (b instanceof DefinedElement) { + if (a instanceof DefinedElement) { + representation.getPairwiseRepresentation(a, b) + } else { + representation.getBasicRepresentation(b) + } + } else { + getFallbackCode(b) + } + } + + override protected doCreateStateCode() { + representation.modelRepresentation.hashCode + } + + override protected doInvalidate() { + representation = null + } +} diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasoner.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasoner.xtend index edcca676..701eb054 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasoner.xtend +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasoner.xtend @@ -16,8 +16,9 @@ import hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.ScopePropagator import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.PartialInterpretationInitialiser import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialInterpretation import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialinterpretationPackage +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.statecoder.AbstractNeighbourhoodBasedStateCoderFactory import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.statecoder.IdentifierBasedStateCoderFactory -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.statecoder.NeighbourhoodBasedStateCoderFactory +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.statecoder.PairwiseNeighbourhoodBasedStateCoderFactory import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.dse.BestFirstStrategyForModelGeneration import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.dse.DiversityChecker import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.dse.LoggerSolutionFoundHandler @@ -49,7 +50,7 @@ class ViatraReasoner extends LogicReasoner { ReasonerWorkspace workspace) throws LogicReasonerException { val viatraConfig = configuration.asConfig - if (viatraConfig.debugConfiguration.logging) { + if (viatraConfig.documentationLevel == DocumentationLevel.FULL) { DesignSpaceExplorer.turnOnLogging(DseLoggingLevel.VERBOSE_FULL) } else { DesignSpaceExplorer.turnOnLogging(DseLoggingLevel.WARN) @@ -139,7 +140,7 @@ class ViatraReasoner extends LogicReasoner { dse.setInitialModel(emptySolution, false) val IStateCoderFactory statecoder = if (viatraConfig.stateCoderStrategy == StateCoderStrategy.Neighbourhood) { - new NeighbourhoodBasedStateCoderFactory + new PairwiseNeighbourhoodBasedStateCoderFactory } else { new IdentifierBasedStateCoderFactory } @@ -239,7 +240,7 @@ class ViatraReasoner extends LogicReasoner { } } - private def dispatch long runtime(NeighbourhoodBasedStateCoderFactory sc) { + private def dispatch long runtime(AbstractNeighbourhoodBasedStateCoderFactory sc) { sc.sumStatecoderRuntime } diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasonerConfiguration.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasonerConfiguration.xtend index e6aee20c..99decdd9 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasonerConfiguration.xtend +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasonerConfiguration.xtend @@ -64,8 +64,7 @@ class DiversityDescriptor { } class DebugConfiguration { - public var logging = false - public var PartialInterpretationVisualiser partialInterpretatioVisualiser = null; + public var PartialInterpretationVisualiser partialInterpretatioVisualiser = null public var partalInterpretationVisualisationFrequency = 1 } diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/BestFirstStrategyForModelGeneration.java b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/BestFirstStrategyForModelGeneration.java index 077fea21..144e7484 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/BestFirstStrategyForModelGeneration.java +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/BestFirstStrategyForModelGeneration.java @@ -20,8 +20,8 @@ import java.util.List; import java.util.PriorityQueue; import java.util.Random; -import org.apache.log4j.Level; import org.apache.log4j.Logger; +import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.viatra.dse.api.strategy.interfaces.IStrategy; import org.eclipse.viatra.dse.base.ThreadContext; @@ -254,6 +254,7 @@ public class BestFirstStrategyForModelGeneration implements IStrategy { activationIds = new ArrayList(context.getUntraversedActivationIds()); Collections.shuffle(activationIds); } catch (NullPointerException e) { + logger.warn("Unexpected state code: " + context.getDesignSpaceManager().getCurrentState()); numberOfStatecoderFail++; activationIds = Collections.emptyList(); } @@ -295,7 +296,10 @@ public class BestFirstStrategyForModelGeneration implements IStrategy { int id = ++numberOfPrintedModel; if (id % configuration.debugConfiguration.partalInterpretationVisualisationFrequency == 0) { PartialInterpretationVisualisation visualisation = partialInterpretatioVisualiser.visualiseConcretization(p); - visualisation.writeToFile(workspace, String.format("state%09d.png", id)); + logger.debug("Visualizing state: " + id + " (" + context.getDesignSpaceManager().getCurrentState() + ")"); + String name = String.format("state%09d", id); + visualisation.writeToFile(workspace, name + ".png"); + workspace.writeModel((EObject) context.getModel(), name + ".xmi"); } } } diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/AbstractThreeValuedObjective.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/AbstractThreeValuedObjective.xtend index 241bef2a..cd911ab5 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/AbstractThreeValuedObjective.xtend +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/AbstractThreeValuedObjective.xtend @@ -1,60 +1,10 @@ package hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.optimization -import java.util.Comparator import org.eclipse.viatra.dse.base.ThreadContext -import org.eclipse.xtend.lib.annotations.Accessors -import org.eclipse.xtend.lib.annotations.Data - -abstract class ObjectiveThreshold { - public static val NO_THRESHOLD = new hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.optimization.ObjectiveThreshold { - override isHard() { - false - } - - override satisfiesThreshold(double cost, Comparator comparator) { - true - } - } - - private new() { - } - - def boolean isHard() { - true - } - - def boolean satisfiesThreshold(double cost, Comparator comparator) - - @Data - static class Exclusive extends ObjectiveThreshold { - val double threshold - - override satisfiesThreshold(double cost, Comparator comparator) { - comparator.compare(threshold, cost) > 0 - } - } - - @Data - static class Inclusive extends ObjectiveThreshold { - val double threshold - - override satisfiesThreshold(double cost, Comparator comparator) { - comparator.compare(threshold, cost) >= 0 - } - } -} - -abstract class AbstractThreeValuedObjective implements IThreeValuedObjective { - @Accessors val String name - @Accessors ObjectiveKind kind - @Accessors ObjectiveThreshold threshold - @Accessors int level +abstract class AbstractThreeValuedObjective extends DirectionalThresholdObjective implements IThreeValuedObjective { protected new(String name, ObjectiveKind kind, ObjectiveThreshold threshold, int level) { - this.name = name - this.kind = kind - this.threshold = threshold - this.level = level + super(name, kind, threshold, level) } abstract def double getLowestPossibleFitness(ThreadContext threadContext) @@ -82,21 +32,4 @@ abstract class AbstractThreeValuedObjective implements IThreeValuedObjective { throw new IllegalStateException("Unknown three valued objective kind: " + kind) } } - - override isHardObjective() { - threshold.hard - } - - override satisifiesHardObjective(Double fitness) { - threshold.satisfiesThreshold(fitness, comparator) - } - - override getComparator() { - kind.comparator - } - - override setComparator(Comparator comparator) { - kind = ObjectiveKind.fromComparator(comparator) - } - } diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/CompositeDirectionalThresholdObjective.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/CompositeDirectionalThresholdObjective.xtend new file mode 100644 index 00000000..0aa442f5 --- /dev/null +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/CompositeDirectionalThresholdObjective.xtend @@ -0,0 +1,62 @@ +package hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.optimization + +import com.google.common.collect.ImmutableList +import java.util.Collection +import org.eclipse.viatra.dse.base.ThreadContext + +class CompositeDirectionalThresholdObjective extends DirectionalThresholdObjective { + val Collection objectives + + new(String name, Collection objectives) { + this(name, objectives, getKind(objectives), getThreshold(objectives), getLevel(objectives)) + } + + new(String name, DirectionalThresholdObjective... objectives) { + this(name, objectives as Collection) + } + + protected new(String name, Iterable objectives, ObjectiveKind kind, + ObjectiveThreshold threshold, int level) { + super(name, kind, threshold, level) + this.objectives = ImmutableList.copyOf(objectives) + } + + override createNew() { + new CompositeDirectionalThresholdObjective(name, objectives.map[createNew as DirectionalThresholdObjective], + kind, threshold, level) + } + + override init(ThreadContext context) { + for (objective : objectives) { + objective.init(context) + } + } + + override protected getRawFitness(ThreadContext context) { + var double fitness = 0 + for (objective : objectives) { + fitness += objective.getFitness(context) + } + fitness + } + + private static def getKind(Collection objectives) { + val kinds = objectives.map[kind].toSet + if (kinds.size != 1) { + throw new IllegalArgumentException("Passed objectives must have the same kind") + } + kinds.head + } + + private static def getThreshold(Collection objectives) { + objectives.map[threshold].reduce[a, b|a.merge(b)] + } + + private static def int getLevel(Collection objectives) { + val levels = objectives.map[level].toSet + if (levels.size != 1) { + throw new IllegalArgumentException("Passed objectives must have the same level") + } + levels.head + } +} diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/DirectionalThresholdObjective.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/DirectionalThresholdObjective.xtend new file mode 100644 index 00000000..376e3d1a --- /dev/null +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/DirectionalThresholdObjective.xtend @@ -0,0 +1,164 @@ +package hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.optimization + +import java.util.Comparator +import org.eclipse.viatra.dse.base.ThreadContext +import org.eclipse.viatra.dse.objectives.IObjective +import org.eclipse.xtend.lib.annotations.Accessors +import org.eclipse.xtend.lib.annotations.Data +import org.eclipse.xtend.lib.annotations.FinalFieldsConstructor + +abstract class ObjectiveThreshold { + public static val NO_THRESHOLD = new ObjectiveThreshold { + override isHard() { + false + } + + override satisfiesThreshold(double cost, Comparator comparator) { + true + } + + override protected postProcessSatisfactoryCost(double cost, ObjectiveKind kind) { + cost + } + + override ObjectiveThreshold merge(ObjectiveThreshold other) { + if (other == NO_THRESHOLD) { + NO_THRESHOLD + } else { + throw new IllegalArgumentException("Merged thresholds must have the same type") + } + } + } + + private new() { + } + + def boolean isHard() { + true + } + + def boolean satisfiesThreshold(double cost, ObjectiveKind kind) { + satisfiesThreshold(cost, kind.comparator) + } + + def boolean satisfiesThreshold(double cost, Comparator comparator) + + def double postProcessCost(double cost, ObjectiveKind kind) { + if (satisfiesThreshold(cost, kind)) { + postProcessSatisfactoryCost(cost, kind) + } else { + cost + } + } + + protected def double postProcessSatisfactoryCost(double cost, ObjectiveKind kind) + + def ObjectiveThreshold merge(ObjectiveThreshold other) + + @Data + static class Exclusive extends ObjectiveThreshold { + static val EPSILON = 0.1 + + val double threshold + val boolean clampToThreshold + + @FinalFieldsConstructor + new() { + } + + new(double threshold) { + this(threshold, true) + } + + override satisfiesThreshold(double cost, Comparator comparator) { + comparator.compare(threshold, cost) < 0 + } + + override protected postProcessSatisfactoryCost(double cost, ObjectiveKind kind) { + if (clampToThreshold) { + threshold + Math.signum(kind.satisfiedValue) * EPSILON + } else { + cost + } + } + + override ObjectiveThreshold merge(ObjectiveThreshold other) { + if (other instanceof Exclusive) { + new Exclusive(threshold + other.threshold) + } else { + throw new IllegalArgumentException("Merged thresholds must have the same type") + } + } + } + + @Data + static class Inclusive extends ObjectiveThreshold { + val double threshold + val boolean clampToThreshold + + @FinalFieldsConstructor + new() { + } + + new(double threshold) { + this(threshold, true) + } + + override satisfiesThreshold(double cost, Comparator comparator) { + comparator.compare(threshold, cost) <= 0 + } + + override protected postProcessSatisfactoryCost(double cost, ObjectiveKind kind) { + if (clampToThreshold) { + threshold + } else { + cost + } + } + + override ObjectiveThreshold merge(ObjectiveThreshold other) { + if (other instanceof Inclusive) { + new Inclusive(threshold + other.threshold) + } else { + throw new IllegalArgumentException("Merged thresholds must have the same type") + } + } + } +} + +abstract class DirectionalThresholdObjective implements IObjective { + @Accessors val String name + @Accessors ObjectiveKind kind + @Accessors ObjectiveThreshold threshold + @Accessors int level + + protected new(String name, ObjectiveKind kind, ObjectiveThreshold threshold, int level) { + this.name = name + this.kind = kind + this.threshold = threshold + this.level = level + } + + override isHardObjective() { + threshold.hard + } + + override satisifiesHardObjective(Double fitness) { + threshold.satisfiesThreshold(fitness, comparator) + } + + override getComparator() { + kind.comparator + } + + override setComparator(Comparator comparator) { + kind = ObjectiveKind.fromComparator(comparator) + } + + override getFitness(ThreadContext context) { + val fitness = getRawFitness(context) + threshold.postProcessCost(fitness, kind) + } + + protected def double getRawFitness(ThreadContext context) +} diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/MatchCostObjective.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/MatchCostObjective.xtend new file mode 100644 index 00000000..a0c6a2c1 --- /dev/null +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/MatchCostObjective.xtend @@ -0,0 +1,52 @@ +package hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.optimization + +import com.google.common.collect.ImmutableList +import java.util.Collection +import org.eclipse.viatra.dse.base.ThreadContext +import org.eclipse.viatra.query.runtime.api.IPatternMatch +import org.eclipse.viatra.query.runtime.api.IQuerySpecification +import org.eclipse.viatra.query.runtime.api.ViatraQueryMatcher +import org.eclipse.xtend.lib.annotations.Data + +@Data +class MatchCostElement { + val IQuerySpecification> querySpecification + val double weight +} + +class MatchCostObjective extends DirectionalThresholdObjective { + val Collection costElements + Collection matchers + + new(String name, Collection costElements, ObjectiveKind kind, ObjectiveThreshold threshold, + int level) { + super(name, kind, threshold, level) + this.costElements = costElements + } + + override createNew() { + new MatchCostObjective(name, costElements, kind, threshold, level) + } + + override init(ThreadContext context) { + val queryEngine = context.queryEngine + matchers = ImmutableList.copyOf(costElements.map [ + val matcher = querySpecification.getMatcher(queryEngine) + new CostElementMatcher(matcher, weight) + ]) + } + + override protected getRawFitness(ThreadContext context) { + var double cost = 0 + for (it : matchers) { + cost += weight * matcher.countMatches + } + cost + } + + @Data + private static class CostElementMatcher { + val ViatraQueryMatcher matcher + val double weight + } +} diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ObjectiveKind.java b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ObjectiveKind.java index f65428fe..cbbaaafd 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ObjectiveKind.java +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ObjectiveKind.java @@ -12,6 +12,16 @@ public enum ObjectiveKind { return Comparators.LOWER_IS_BETTER; } + @Override + public double getInvalidValue() { + return Double.POSITIVE_INFINITY; + } + + @Override + public double getSatisfiedValue() { + return Double.NEGATIVE_INFINITY; + } + }, HIGHER_IS_BETTER { @@ -20,10 +30,24 @@ public enum ObjectiveKind { return Comparators.HIGHER_IS_BETTER; } + @Override + public double getInvalidValue() { + return Double.NEGATIVE_INFINITY; + } + + @Override + public double getSatisfiedValue() { + return Double.POSITIVE_INFINITY; + } + }; public abstract Comparator getComparator(); + public abstract double getInvalidValue(); + + public abstract double getSatisfiedValue(); + public static ObjectiveKind fromComparator(Comparator comparator) { if (Comparators.LOWER_IS_BETTER.equals(comparator)) { return ObjectiveKind.LOWER_IS_BETTER; diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/QueryBasedObjective.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/QueryBasedObjective.xtend new file mode 100644 index 00000000..d355f5be --- /dev/null +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/QueryBasedObjective.xtend @@ -0,0 +1,48 @@ +package hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.optimization + +import org.eclipse.viatra.dse.base.ThreadContext +import org.eclipse.viatra.query.runtime.api.IPatternMatch +import org.eclipse.viatra.query.runtime.api.IQuerySpecification +import org.eclipse.viatra.query.runtime.api.ViatraQueryMatcher + +class QueryBasedObjective extends DirectionalThresholdObjective { + val IQuerySpecification> querySpecification + ViatraQueryMatcher matcher + + new(IQuerySpecification> querySpecification, + ObjectiveKind kind, ObjectiveThreshold threshold, int level) { + super(querySpecification.simpleName + " objective", kind, threshold, level) + if (querySpecification.parameters.size != 1) { + throw new IllegalArgumentException("Objective query must have a single parameter") + } + this.querySpecification = querySpecification + } + + override createNew() { + new QueryBasedObjective(querySpecification, kind, threshold, level) + } + + override init(ThreadContext context) { + matcher = querySpecification.getMatcher(context.queryEngine) + } + + override protected getRawFitness(ThreadContext context) { + val iterator = matcher.allMatches.iterator + if (!iterator.hasNext) { + return invalidValue + } + val value = iterator.next.get(0) + if (iterator.hasNext) { + throw new IllegalStateException("Multiple matches for objective query") + } + if (value instanceof Number) { + value.doubleValue + } else { + throw new IllegalStateException("Objective value is not an instance of Number") + } + } + + private def getInvalidValue() { + kind.invalidValue + } +} diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ThreeValuedCostObjective.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ThreeValuedCostObjective.xtend index e2585c83..0a6fd55b 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ThreeValuedCostObjective.xtend +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/optimization/ThreeValuedCostObjective.xtend @@ -42,7 +42,7 @@ class ThreeValuedCostObjective extends AbstractThreeValuedObjective { ]) } - override getFitness(ThreadContext context) { + override getRawFitness(ThreadContext context) { var int cost = 0 for (matcher : matchers) { cost += matcher.weight * matcher.currentMatcher.countMatches -- cgit v1.2.3-54-g00ecf