Class TypeFilterConstraint
java.lang.Object
tools.refinery.interpreter.matchers.psystem.BasePConstraint
tools.refinery.interpreter.matchers.psystem.DeferredPConstraint
tools.refinery.interpreter.matchers.psystem.VariableDeferredPConstraint
tools.refinery.interpreter.matchers.psystem.basicdeferred.TypeFilterConstraint
- All Implemented Interfaces:
ITypeConstraint
,ITypeInfoProviderConstraint
,PConstraint
,PTraceable
Represents a non-enumerable type constraint that asserts that values substituted for the given tuple of variables
form a tuple that belongs to a (typically non-enumerable) extensional relation identified by an
IInputKey
.
The InputKey is typically not enumerable. If it is enumerable, use TypeConstraint
instead, so that the PConstraint carries over the property of enumerability.
-
Nested Class Summary
Nested classes/interfaces inherited from interface tools.refinery.interpreter.matchers.psystem.ITypeConstraint
ITypeConstraint.TypeConstraintUtil
-
Field Summary
Fields inherited from class tools.refinery.interpreter.matchers.psystem.BasePConstraint
pBody
Fields inherited from interface tools.refinery.interpreter.matchers.psystem.PConstraint
COMPARE_BY_MONOTONOUS_ID
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
doReplaceVariable
(PVariable obsolete, PVariable replacement) The set of variables whose potential values can be enumerated (once all non-deduced variables have known values).A (preferably minimal) cover of known functional dependencies between variables.getImpliedJudgements
(IQueryMetaContext context) Returns type information implied by this constraint.protected String
Methods inherited from class tools.refinery.interpreter.matchers.psystem.VariableDeferredPConstraint
isReadyAt
Methods inherited from class tools.refinery.interpreter.matchers.psystem.BasePConstraint
checkSanity, delete, getAffectedVariables, getBody, getMonotonousID, getPSystem, replaceVariable, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface tools.refinery.interpreter.matchers.psystem.PConstraint
checkSanity, delete, getAffectedVariables, getBody, getMonotonousID, replaceVariable
-
Constructor Details
-
TypeFilterConstraint
-
-
Method Details
-
getVariablesTuple
-
getInputKey
-
getEquivalentJudgement
- Specified by:
getEquivalentJudgement
in interfaceITypeConstraint
-
doReplaceVariable
- Specified by:
doReplaceVariable
in classBasePConstraint
-
getImpliedJudgements
Description copied from interface:ITypeInfoProviderConstraint
Returns type information implied by this constraint.- Specified by:
getImpliedJudgements
in interfaceITypeInfoProviderConstraint
-
getDeducedVariables
Description copied from interface:PConstraint
The set of variables whose potential values can be enumerated (once all non-deduced variables have known values).- Specified by:
getDeducedVariables
in interfacePConstraint
-
getDeferringVariables
- Specified by:
getDeferringVariables
in classVariableDeferredPConstraint
-
toStringRest
- Specified by:
toStringRest
in classBasePConstraint
-
getFunctionalDependencies
Description copied from interface:PConstraint
A (preferably minimal) cover of known functional dependencies between variables.- Specified by:
getFunctionalDependencies
in interfacePConstraint
- Overrides:
getFunctionalDependencies
in classBasePConstraint
- Returns:
- non-trivial functional dependencies in the form of {variables} --> {variables}, where dependencies with the same lhs are unified.
-