From 6eb760ee960cd3efe51ca6e4107153c09838a1da Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Thu, 1 Aug 2019 18:38:15 +0200 Subject: Clean up CPS and Satellite domains --- .../debug/run2/generated3valued.vql_deactivated | 3000 -------------------- 1 file changed, 3000 deletions(-) delete mode 100644 Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/run2/generated3valued.vql_deactivated (limited to 'Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/run2/generated3valued.vql_deactivated') diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/run2/generated3valued.vql_deactivated b/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/run2/generated3valued.vql_deactivated deleted file mode 100644 index c96a951c..00000000 --- a/Domains/hu.bme.mit.inf.dslreasoner.domains.satellite/outputs/debug/run2/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 mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfInterferometryMission_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfInterferometryMission_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class_UndefinedPart(problem,interpretation,element); - neg find scopeDisallowsNewCommunicatingElement_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class_UndefinedPart(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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class_UndefinedPart(problem,interpretation,element); - neg find scopeDisallowsNewGroundStationNetwork_class(problem, interpretation); - neg find isPrimitive(element); -} or { - find interpretation(problem,interpretation); - PartialInterpretation.openWorldElements(interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class_UndefinedPart(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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_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 mustInstanceOfInterferometryPayload_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_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 mustInstanceOfInterferometryPayload_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat6U_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 mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat6U_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 mustInstanceOfPayload_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 mustInstanceOfConstellationMission_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 mustInstanceOfPayload_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 mustInstanceOfConstellationMission_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 mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat6U_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 mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat6U_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 mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_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 mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfInterferometryMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfInterferometryMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfSpacecraft_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfSpacecraft_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfSpacecraft_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfSpacecraft_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_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 mustInstanceOfCommunicatingElement_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 mustInstanceOfInterferometryPayload_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 mustInstanceOfCommSubsystem_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 mustInstanceOfCubeSat6U_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 mustInstanceOfCubeSat3U_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 mustInstanceOfInterferometryMission_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 mustInstanceOfSmallSat_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 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_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); -} -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_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_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_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_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_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_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_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); -} - -////////// -// 4.2 Type refinement -////////// -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 mustInstanceOfInterferometryPayload_class(problem,interpretation,element); - neg find mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat6U_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 mustInstanceOfPayload_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 mustInstanceOfConstellationMission_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 mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfSmallSat_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfGroundStationNetwork_class(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); -} -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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfPayload_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCubeSat6U_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 mustInstanceOfPayload_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 mustInstanceOfConstellationMission_class(problem,interpretation,element); - neg find mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfUHFCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfKaCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfXCommSubsystem_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfPayload_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 mustInstanceOfCommunicatingElement_class(problem,interpretation,element); - neg find mustInstanceOfCommSubsystem_class(problem,interpretation,element); - neg find mustInstanceOfInterferometryMission_class_UndefinedPart(problem,interpretation,element); - neg find mustInstanceOfPayload_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); -} - -- cgit v1.2.3-70-g09d2