edu.isi.powerloom.logic
Class Description

java.lang.Object
  extended by edu.isi.stella.Stella_Object
      extended by edu.isi.stella.StandardObject
          extended by edu.isi.stella.ContextSensitiveObject
              extended by edu.isi.powerloom.logic.LogicObject
                  extended by edu.isi.powerloom.logic.Description
Direct Known Subclasses:
NamedDescription

public class Description
extends LogicObject


Field Summary
 Vector internalVariables
          The set of internally quantified variables besides the descriptions's IO variables.
 Vector ioVariables
           
 Proposition proposition
           
 KeyValueList queryPatterns
           
 
Fields inherited from class edu.isi.powerloom.logic.LogicObject
dependentPropositionsIndex, dynamicSlots, surrogateValueInverse, variableValueInverse
 
Fields inherited from class edu.isi.stella.ContextSensitiveObject
homeContext
 
Constructor Summary
Description()
           
 
Method Summary
static Stella_Object accessDescriptionSlotValue(Description self, Symbol slotname, Stella_Object value, boolean setvalueP)
           
static int accessObservedCardinality(Description self)
           
static void addSubsumptionLink(Description subdescription, Description superdescription)
           
static void addTaxonomyImpliesSubsumesLink(Description taildescription, Description headdescription)
           
static List allIntensionalParents(Description self)
           
static Cons allNamedDirectSubdescriptions(Description self)
           
static Cons allNamedDirectSuperdescriptions(Description self, boolean removeequivalentsP)
           
static Iterator allocateAntecedentsIterator(Description goaldescription, Vector externalarguments, boolean reversepolarityP)
           
static void applyForwardRulesToVector(Description triggerdescription, Vector arguments, Proposition triggerproposition)
           
static boolean applyKappaP(Description description, Vector vector)
          Apply (inherit) the description 'description' to members of the vector 'vector'.
static void applyRuleConsequentToVector(Description consequent, Vector arguments, Proposition rule, Description triggerdescription, Proposition triggerproposition, boolean toucheddefaultP, Justification bcJustification)
           
 int arity()
           
static Proposition assertDescriptionImpliesDescription(Description sub, Description renamed_Super, boolean dontupdateP)
           
static boolean atomicGoalDescriptionP(Description description)
           
static boolean checkForSingleValuedGoalP(Description pattern, Cons iobindings)
           
static KeyValueList collectForwardChainingRules(Description description, java.lang.Object[] MV_returnarray)
           
static boolean computedConstraintP(Description self)
           
static boolean computedTermP(Description self)
           
static void computeInternalVariables(Description self)
           
static List computeStructuralFunctionEvaluationOrder(Description self)
           
static Description copyDescription(Description self, KeyValueMap parentmapping, boolean addbacklinksP)
           
static void createBaseRelationForPolymorphicDescription(Description description)
           
static TaxonomyNode createDescriptionImplicationSubsumptionNode(Description description, TaxonomyNode parentnode)
           
static QueryIterator createQueryIterator(Description description, Vector outsidebindings, java.lang.String debugid)
           
 BooleanWrapper deferredContrapositivesP()
           
static void deriveDeferredContrapositiveSatelliteRules(Description self)
           
static void deriveDeferredSatelliteRules(Description self)
           
static boolean descriptionExtensionL(Description desc1, Description desc2)
           
static boolean descriptionImpliesDescriptionP(Description subdesc, Description superdesc)
           
 Symbol descriptionName()
          Return the name of the description self, if it has one.
static TruthValue descriptionSpecializesDescriptionP(Description sub, Description renamed_Super)
           
 Surrogate descriptionSurrogate()
           
static boolean disjointTermsP(Description d1, Description d2)
          Return TRUE if 'd1' and 'd2' belong to disjoint partitions.
static void dropTaxonomyImpliesSubsumesLink(Description taildescription, Description headdescription)
           
static void ensureDescriptionBody(Description description)
           
static boolean equivalentDescriptionsP(Description self, Description other, KeyValueMap mapping)
           
static void evaporateVirgin(Description self)
           
static boolean expensiveDisjointTermsP(Description d1, Description d2)
           
static Proposition extractProposition(Description self, KeyValueMap mapping)
           
static TaxonomyNode findDescriptionImplicationSubsumptionNode(Description description)
           
static Cons findDirectSupersAndSubs(Description self, boolean onlysupersP, java.lang.Object[] MV_returnarray)
          Classify 'self' and return three values, its direct supers, direct subs, and a list of equivalent descriptions.
static Description findDuplicateComplexDescription(Description self)
           
static Description findDuplicateDescription(Description self)
           
 LogicObject findDuplicateNamedDescription()
           
static TaxonomyNode findOrCreateDescriptionImplicationSubsumptionNode(Description description)
           
static Description finishBuildingDescription(Description description, boolean checkforduplicateP, Keyword kind)
           
 List forwardChainingIndices()
           
static Stella_Object generateDescription(Description self)
           
static Cons generateDescriptionProposition(Description self, boolean invertP)
           
static Cons generateDescriptionsAsRule(Description head, Description tail, Proposition rule, boolean reversepolarityP)
           
static Description getInferableComplementDescription(Description self)
           
static LogicObject getPrototype(Description description)
           
static List getStructuralFunctionEvaluationOrder(Description self)
           
static boolean hasForwardChainingRulesP(Description description, Proposition proposition)
           
static void helpAllSubtypes(Description renamed_Super, Stella_Object self, List types)
           
static Cons helpCollectForwardRules(Description description, KeyValueList rules, KeyValueList indices, boolean toucheddefaultP, List beenthere)
           
static void helpCollectIntensionalParents(Description description, Proposition proposition, List collection)
           
static Cons helpGetForwardChainingRules(Description description)
           
 void helpPrintOutline(OutputStream stream, int currentDepth, int depth, boolean namedP)
          Helper function for printConceptOutline
static boolean inferableP(Description self)
           
static boolean inferableWithCycleCheckP(Description self, Cons alreadyvisitedlist)
           
static KeyValueList inferVariableTypesInDescription(Description description)
           
static Description instantiateExternalVariables(Description self, KeyValueMap bindings)
           
static void introduceIntoClassificationSession(Description self)
           
static void markUnmarkedSuperrelations(Description description, MarkerTable selfisbelowtable)
           
static boolean namedDescriptionP(Description self)
          Return TRUE if 'self' is the description of a named class or relation.
 Relation nativeRelation()
           
static Description newDescription()
           
static boolean nonInferableP(Description self)
           
static void optimizeQuery(Description description, BooleanVector booleanvector, ControlFrame parentframe)
           
 Surrogate primaryType()
          Returns the primary type of self.
static void printDescription(Description self, OutputStream stream, boolean toplevelP)
           
static void printDescriptionsAsKifRule(Description head, Description tail, Proposition rule, boolean reversepolarityP)
           
static void printKifDescription(Description self)
           
static void printKifDescriptionProposition(Description self, boolean invertP)
           
static Description selectOptimalQueryPattern(Description description, BooleanVector booleanvector, ControlFrame parentframe)
           
static void simplifyDescription(Description description, boolean postoptimizationP)
           
 List structuralFunctionEvaluationOrder()
           
static Cons topLevelExistentialVariables(Description self)
           
static TruthValue unaryDescriptionSpecializesDescriptionP(Description sub, Description renamed_Super)
           
static boolean variableArityP(Description self)
           
static PatternVariable variableFromUnbindingOffset(Description description, int uboffset)
           
 boolean virginP()
           
 
Methods inherited from class edu.isi.powerloom.logic.LogicObject
accessLogicObjectSlotValue, addIsaLink, allDirectSubcollections, allDirectSubcollectionsWithEquivalents, allDirectSupercollections, allDirectSupercollectionsWithEquivalents, allEquivalentCollections, allInferableDirectSubcollections, allSlotValues, allSlotValueTypes, allSubcollections, allSupercollections, allSupportedNamedSubcollections, applicableRulesOfDescription, assertProperty, badP, bindToEquivalentValue, buildCaseFromInstance, cheapEmptyTermP, collectionImpliesCollectionP, collectSubsumingParentsBelow, conceptPrototypeOf, conceptPrototypeP, deletedP, deletedPSetter, derivePartitionMembershipsP, destroyTerm, downclassificationTimestamp, downclassifiedP, downclassifyOneDescription, equivalenceCollections, equivalentCollectionPriority, evaluateLogicObjectTerm, evaluateReachableInequalities, evaluateRemainingArguments, expensiveEmptyTermP, filterInstanceP, generateCaseBasedAnswer, generateExpression, getMostSpecificClasses, getSlotMaximumCardinality, getSlotMinimumCardinality, getSlotValue, getSlotValueType, helpAllSupportedNamedSubcollections, helpCollectParentsBelowP, helpDerivePartitionMemberships, helpDownclassifyOneDescription, helpUpclassifyOneEntity, introductionTimestamp, logicObjectDinheritUnnamedDescription, logLogicObject, markAsIncoherent, matchInstances, namedCollectionP, newLogicObject, nonPolymorphicPredicateP, objectNameLessThanP, printKifLogicObject, printLogicObject, printObject, processDefinitionOptions, refreshDownclassificationTimestamp, removeAllDependentPropositionLinks, retractFactsOfInstance, retractProperty, testSlotValueP, unbindEquivalentValue, unlinkEquivalentValue, upclassifiedLaterThanP, upclassifyOneDescription, upclassifyOneInstance, updateProperty, variableValueInverse, visibleTermP
 
Methods inherited from class edu.isi.stella.ContextSensitiveObject
homeModule
 
Methods inherited from class edu.isi.stella.StandardObject
arrayTypeSpecifierP, baseTypeToTypeSpec, cantOverwriteActiveCollectionSlot, compatibleParameterTypesP, computeAnchoredTypeSpec, computeRelativeTypeSpec, conformingTypeSpecP, copyWrappedLiteral, cppNonPointerTypeP, cppReferenceTypeP, cppReferencizeType, cppTranslateAndPointerizeTypeSpec, cppTranslateAndReferencizeTypeSpec, cppTranslateTypeSpec, cppTypeWithoutInteriorPointersP, dropSlotValue, extractParameterType, extractRequiredArgumentValues, getSlot, hashCode_, idlTranslateTypeSpec, inverseSlotDemon, javaLiteralP, javaNativeLiteralWrapperNames, javaSpecialSetterName, javaTranslateArrayOfTypeSpec, javaTranslateTypeSpec, javaTranslateTypeSpecForFunction, javaTranslateTypeSpecHelper, javaYieldClassObjectArrayExpression, javaYieldClassObjectExpression, javaYieldFullyQualifiedTypeName, javaYieldTranslatedClassAndMethodNames, listifyTypeSpec, lookupClTypeFromStellaType, objectEqlP, putSlotValue, readSlotValue, runConstructorDemons, runDestructorDemons, runSlotDemons, runSlotGuardDemonsP, standardObjectP, subTypeSpecOfP, twoArgumentLeastCommonSupertype, typeSpecToBaseType, typeSpecToClass, typeToWalkedNullValueTree, validateTypeSpecifier, voidP, walkTypeSpecIsNativeTypeP, writeSlotValue, yieldTypeSpecTree
 
Methods inherited from class edu.isi.stella.Stella_Object
_, accessInContext, addPropertyValue, amPm, anchoredTypeSpecifierP, andOrNotTreeP, applyCoercionMethod, atomicExpressionP, bindToSurrogateP, booleanP, bootstrapIsaP, bquotify, cast, characterP, chooseSortPredicate, clConditionalizeTypeDeclarationTree, clTranslateAtomicTree, clTranslateATree, clTranslateBooleanTest, clTranslatePlainBooleanTest, clTranslateVerbatimBodySymbols, clYieldTypedExpressionTree, coerceATree, coerceEvaluatedTree, coerceMvTree, coerceOptionValue, coerceToBoolean, coerceToFloat, coerceToHashSet, coerceToModule, coerceToModuleName, coerceToString, coerceToSymbol, coerceToXmlElement, coerceValueToBoolean, coerceValueToFloat, coerceValueToString, coerceValueToType, coercibleP, collectFeatureList, collectKeyValueList, commonLispSymbolP, computeExpressionType, consify, consifyListsAndIterators, consP, consTreeMatchP, convertToLiteral, copyConsTree, cppArgumentIsStreamP, cppBinaryOperatorP, cppBlockP, cppMaybeOutputStatementWithParentheses, cppOperatorP, cppOutputAtomicExpression, cppOutputLiteral, cppOutputOneActualParameter, cppOutputStatement, cppOutputTypedEntity, cppPrognifyStatement, cppPrognP, cppStatementToList, cppStreamIsStandardOutputP, cpptrans, cppTranslateAtomicTree, cppTranslateATree, cppTranslatedArrayTypeP, csValueP, dateDivider, dateTimeDivider, day, dealWithAmPm, dealWithEra, dealWithNoonMidn, decrementReferenceCount, defaultOptionHandler, defineSystem, defmodule, describe, describeObject, describeTersely, destructureMethodNameTree, deUglifyParseTree, either, eqlP, eqlToBooleanP, eqlToCharacterP, eqlToFloatP, eqlToIntegerP, eqlToLongIntegerP, eqlToStringP, equalConsTreesP, equalHashCode, equalP, era, estimatedEvaluationCost, evaluate, evaluateArgumentTree, evaluateAtomicTree, evaluateCommand, expandBquoteTree, filterModuleP, floatP, free, get, getObject, getProperty, hashlist, hashMemoizedArguments, helpBquotify, helpClTranslateATree, helpCoerceATree, helpLptrans, helpTransformBooleanProceduralExpression, helpWalkATree, hour, idlOutputAtomicExpression, idlOutputLiteral, idlOutputStatement, idlTranslateAtomicTree, idlTranslateATree, illegalTreeP, implodePathname, incrementallyTranslate, incrementReferenceCount, inlineUnwrapBoolean, inlineWrapBoolean, inModule, integerP, isaP, javaBinaryOperatorP, javaBlockP, javaEndOfLineTokenP, javaHelpOutputPrintStream, javaMaybeOutputStatementWithParentheses, javaOperatorP, javaOutputLiteral, javaOutputStatement, javaPrognP, javaStreamIsStandardOutputP, javaSymbolCaseP, javaTranslateAtomicTree, javaTranslateATree, javaTranslateWithNativeWrapper, jptrans, keywordP, legalTokenizerFromStateP, legalTokenizerStateP, legalTokenizerToStateP, literalEqlP, logLevelLE, longIntegerP, lptrans, makeEvaluatableBquoteTree, makeFileNameFromRelativePath, makeMemoizedValueEntry, makeMemoizedValueEntryn, matchConsTree, methodSlotP, minute, month, nameToString, nilP, noonMidn, numberWrapperToFloat, objectEqualP, objectHashCode, one, oneI, onlyIf, parametricTypeSpecifierP, parseArrayDimensionsSpec, parseOptions, parseTokenizerCharacterSpec, parseTokenizerStateModifiers, permanentCopy, permanentify, permanentifyForm, po, prettyPrintLiteral, primaryClass, printOutline, printStellaCode, printStellaDefinition, printUndefinedSuperClasses, proceduralExpressionP, ptrans, publicSlots, registerRecycledItem, runOptionHandlerP, safeEqualHashCode, safeHashCode, safePrimaryType, safeYieldTypeSpecifier, searchConsTreeP, searchConsTreeWithFilterP, searchForObject, secondp, setProperty, sideEffectFreeExpressionP, simplifyBquoteTree, specialp, stella_Increment, stellaClassP, stellaCollectionP, stellaNeedToCompileP, stellaNeedToTranslateP, stellaObjectP, stellify, storageSlotP, stringifyInModule, stringP, substituteConsTree, substituteOnce, surrogateP, surrogatify, sweep, symbolCaseP, symbolP, sysTree, targetLanguageType, taxonomyIsaP, timeDivider, timeMultiply, tokenizerIncludeSpecP, tokenizerToStateAlias, tokenizerToStateName, toString, traceIf, traceKeywordP, transientifyForm, transientObjectP, transientSymbolP, translateWalkedTree, treeSize, treeToTrees, trueOptionP, tryToEvaluate, typeP, typify, unmake, unregisterRecycledItem, updateInContext, valuesTreeP, variableExpressionP, verbatimStringP, verbatimTreeP, vetOptions, vrletExpressionP, walkAtomicTree, walkATree, walkCollectionTree, walkDontCallMeTree, walkedExpressionExpression, walkedExpressionType, walkExpressionTree, walkMvExpressionTree, walkMvTree, walkStatement, walkTopLevelExpression, walkWithoutTypeTree, warnAboutUnknownSourceType, weekday, withinContext, withinModule, withinWorld, withStellaTokenizer, withSystemDefinition, withTokenizer, wrapperP, wrapWhereTest, xmlAttributeP, xmlBaseAttributeP, xmlCdataFormP, xmlCdataP, xmlDeclarationFormP, xmlDeclarationP, xmlDoctypeFormP, xmlElementFormP, xmlElementP, xmlGlobalAttributeP, xmlLocalAttributeP, xmlnsAttributeP, xmlProcessingInstructionFormP, xmlProcessingInstructionP, xmlTagCase, year, yieldCondTest, yieldCondTestOrTests, yieldHardcodedCaseSymbolIdOrIds, yieldInCursorClausesForArgumentList, yieldInCursorClausesForGeneralCollection, yieldInCursorClausesForVector, yieldTypeSpecifier, zone, zoneMinute
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

proposition

public Proposition proposition

ioVariables

public Vector ioVariables

internalVariables

public Vector internalVariables
The set of internally quantified variables besides the descriptions's IO variables. This set includes any top-level implicit existential variables plus any variables introduced by some nested quantifier. IMPORTANT: therefore, a description's internal variables are not necessarily equivalent to its top-level implicit existential variables.


queryPatterns

public KeyValueList queryPatterns
Constructor Detail

Description

public Description()
Method Detail

newDescription

public static Description newDescription()

helpPrintOutline

public void helpPrintOutline(OutputStream stream,
                             int currentDepth,
                             int depth,
                             boolean namedP)
Helper function for printConceptOutline

Overrides:
helpPrintOutline in class Stella_Object
Parameters:
stream -
currentDepth -
depth -
namedP -

helpAllSubtypes

public static void helpAllSubtypes(Description renamed_Super,
                                   Stella_Object self,
                                   List types)

findDirectSupersAndSubs

public static Cons findDirectSupersAndSubs(Description self,
                                           boolean onlysupersP,
                                           java.lang.Object[] MV_returnarray)
Classify 'self' and return three values, its direct supers, direct subs, and a list of equivalent descriptions. Setting 'supersOnly?' may speed up the computation (perhaps by a lot). If 'description' is nameless and has no dependent propositions, then it is automatically removed from the hierarchy after classification.

Parameters:
self -
onlysupersP -
MV_returnarray -
Returns:
Cons

evaporateVirgin

public static void evaporateVirgin(Description self)

virginP

public boolean virginP()

markUnmarkedSuperrelations

public static void markUnmarkedSuperrelations(Description description,
                                              MarkerTable selfisbelowtable)

introduceIntoClassificationSession

public static void introduceIntoClassificationSession(Description self)

addSubsumptionLink

public static void addSubsumptionLink(Description subdescription,
                                      Description superdescription)

allNamedDirectSubdescriptions

public static Cons allNamedDirectSubdescriptions(Description self)

allNamedDirectSuperdescriptions

public static Cons allNamedDirectSuperdescriptions(Description self,
                                                   boolean removeequivalentsP)

nonInferableP

public static boolean nonInferableP(Description self)

inferableP

public static boolean inferableP(Description self)

inferableWithCycleCheckP

public static boolean inferableWithCycleCheckP(Description self,
                                               Cons alreadyvisitedlist)

allIntensionalParents

public static List allIntensionalParents(Description self)

helpCollectIntensionalParents

public static void helpCollectIntensionalParents(Description description,
                                                 Proposition proposition,
                                                 List collection)

getStructuralFunctionEvaluationOrder

public static List getStructuralFunctionEvaluationOrder(Description self)

structuralFunctionEvaluationOrder

public List structuralFunctionEvaluationOrder()

computeStructuralFunctionEvaluationOrder

public static List computeStructuralFunctionEvaluationOrder(Description self)

copyDescription

public static Description copyDescription(Description self,
                                          KeyValueMap parentmapping,
                                          boolean addbacklinksP)

simplifyDescription

public static void simplifyDescription(Description description,
                                       boolean postoptimizationP)

selectOptimalQueryPattern

public static Description selectOptimalQueryPattern(Description description,
                                                    BooleanVector booleanvector,
                                                    ControlFrame parentframe)

optimizeQuery

public static void optimizeQuery(Description description,
                                 BooleanVector booleanvector,
                                 ControlFrame parentframe)

accessObservedCardinality

public static int accessObservedCardinality(Description self)

computedConstraintP

public static boolean computedConstraintP(Description self)

computedTermP

public static boolean computedTermP(Description self)

dropTaxonomyImpliesSubsumesLink

public static void dropTaxonomyImpliesSubsumesLink(Description taildescription,
                                                   Description headdescription)

addTaxonomyImpliesSubsumesLink

public static void addTaxonomyImpliesSubsumesLink(Description taildescription,
                                                  Description headdescription)

findOrCreateDescriptionImplicationSubsumptionNode

public static TaxonomyNode findOrCreateDescriptionImplicationSubsumptionNode(Description description)

createDescriptionImplicationSubsumptionNode

public static TaxonomyNode createDescriptionImplicationSubsumptionNode(Description description,
                                                                       TaxonomyNode parentnode)

findDescriptionImplicationSubsumptionNode

public static TaxonomyNode findDescriptionImplicationSubsumptionNode(Description description)

generateDescriptionsAsRule

public static Cons generateDescriptionsAsRule(Description head,
                                              Description tail,
                                              Proposition rule,
                                              boolean reversepolarityP)

generateDescriptionProposition

public static Cons generateDescriptionProposition(Description self,
                                                  boolean invertP)

generateDescription

public static Stella_Object generateDescription(Description self)

printDescription

public static void printDescription(Description self,
                                    OutputStream stream,
                                    boolean toplevelP)

printDescriptionsAsKifRule

public static void printDescriptionsAsKifRule(Description head,
                                              Description tail,
                                              Proposition rule,
                                              boolean reversepolarityP)

printKifDescriptionProposition

public static void printKifDescriptionProposition(Description self,
                                                  boolean invertP)

printKifDescription

public static void printKifDescription(Description self)

allocateAntecedentsIterator

public static Iterator allocateAntecedentsIterator(Description goaldescription,
                                                   Vector externalarguments,
                                                   boolean reversepolarityP)

applyKappaP

public static boolean applyKappaP(Description description,
                                  Vector vector)
Apply (inherit) the description 'description' to members of the vector 'vector'. Return TRUE if no clash was detected. Constraint propagation happens only if it is enabled prior to calling 'apply-kappa?'.

Parameters:
description -
vector -
Returns:
boolean

descriptionSpecializesDescriptionP

public static TruthValue descriptionSpecializesDescriptionP(Description sub,
                                                            Description renamed_Super)

unaryDescriptionSpecializesDescriptionP

public static TruthValue unaryDescriptionSpecializesDescriptionP(Description sub,
                                                                 Description renamed_Super)

getPrototype

public static LogicObject getPrototype(Description description)

createQueryIterator

public static QueryIterator createQueryIterator(Description description,
                                                Vector outsidebindings,
                                                java.lang.String debugid)

expensiveDisjointTermsP

public static boolean expensiveDisjointTermsP(Description d1,
                                              Description d2)

disjointTermsP

public static boolean disjointTermsP(Description d1,
                                     Description d2)
Return TRUE if 'd1' and 'd2' belong to disjoint partitions.

Parameters:
d1 -
d2 -
Returns:
boolean

checkForSingleValuedGoalP

public static boolean checkForSingleValuedGoalP(Description pattern,
                                                Cons iobindings)

instantiateExternalVariables

public static Description instantiateExternalVariables(Description self,
                                                       KeyValueMap bindings)

variableFromUnbindingOffset

public static PatternVariable variableFromUnbindingOffset(Description description,
                                                          int uboffset)

helpGetForwardChainingRules

public static Cons helpGetForwardChainingRules(Description description)

getInferableComplementDescription

public static Description getInferableComplementDescription(Description self)

deriveDeferredContrapositiveSatelliteRules

public static void deriveDeferredContrapositiveSatelliteRules(Description self)

deriveDeferredSatelliteRules

public static void deriveDeferredSatelliteRules(Description self)

atomicGoalDescriptionP

public static boolean atomicGoalDescriptionP(Description description)

extractProposition

public static Proposition extractProposition(Description self,
                                             KeyValueMap mapping)

inferVariableTypesInDescription

public static KeyValueList inferVariableTypesInDescription(Description description)

topLevelExistentialVariables

public static Cons topLevelExistentialVariables(Description self)

finishBuildingDescription

public static Description finishBuildingDescription(Description description,
                                                    boolean checkforduplicateP,
                                                    Keyword kind)

computeInternalVariables

public static void computeInternalVariables(Description self)

findDuplicateDescription

public static Description findDuplicateDescription(Description self)

findDuplicateComplexDescription

public static Description findDuplicateComplexDescription(Description self)

findDuplicateNamedDescription

public LogicObject findDuplicateNamedDescription()

namedDescriptionP

public static boolean namedDescriptionP(Description self)
Return TRUE if 'self' is the description of a named class or relation.

Parameters:
self -
Returns:
boolean

equivalentDescriptionsP

public static boolean equivalentDescriptionsP(Description self,
                                              Description other,
                                              KeyValueMap mapping)

ensureDescriptionBody

public static void ensureDescriptionBody(Description description)

createBaseRelationForPolymorphicDescription

public static void createBaseRelationForPolymorphicDescription(Description description)

descriptionName

public Symbol descriptionName()
Return the name of the description self, if it has one.

Returns:
Symbol

applyForwardRulesToVector

public static void applyForwardRulesToVector(Description triggerdescription,
                                             Vector arguments,
                                             Proposition triggerproposition)

applyRuleConsequentToVector

public static void applyRuleConsequentToVector(Description consequent,
                                               Vector arguments,
                                               Proposition rule,
                                               Description triggerdescription,
                                               Proposition triggerproposition,
                                               boolean toucheddefaultP,
                                               Justification bcJustification)

hasForwardChainingRulesP

public static boolean hasForwardChainingRulesP(Description description,
                                               Proposition proposition)

collectForwardChainingRules

public static KeyValueList collectForwardChainingRules(Description description,
                                                       java.lang.Object[] MV_returnarray)

helpCollectForwardRules

public static Cons helpCollectForwardRules(Description description,
                                           KeyValueList rules,
                                           KeyValueList indices,
                                           boolean toucheddefaultP,
                                           List beenthere)

descriptionImpliesDescriptionP

public static boolean descriptionImpliesDescriptionP(Description subdesc,
                                                     Description superdesc)

descriptionSurrogate

public Surrogate descriptionSurrogate()

assertDescriptionImpliesDescription

public static Proposition assertDescriptionImpliesDescription(Description sub,
                                                              Description renamed_Super,
                                                              boolean dontupdateP)

descriptionExtensionL

public static boolean descriptionExtensionL(Description desc1,
                                            Description desc2)

arity

public int arity()

variableArityP

public static boolean variableArityP(Description self)

accessDescriptionSlotValue

public static Stella_Object accessDescriptionSlotValue(Description self,
                                                       Symbol slotname,
                                                       Stella_Object value,
                                                       boolean setvalueP)

deferredContrapositivesP

public BooleanWrapper deferredContrapositivesP()

forwardChainingIndices

public List forwardChainingIndices()

nativeRelation

public Relation nativeRelation()

primaryType

public Surrogate primaryType()
Description copied from class: Stella_Object
Returns the primary type of self. Gets defined automatically for every non-abstract subclass of OBJECT.

Overrides:
primaryType in class LogicObject
Returns:
Surrogate