edu.isi.powerloom.logic
Class Skolem
java.lang.Object
edu.isi.stella.Stella_Object
edu.isi.stella.StandardObject
edu.isi.stella.ContextSensitiveObject
edu.isi.powerloom.logic.LogicObject
edu.isi.powerloom.logic.Skolem
- Direct Known Subclasses:
- PatternVariable
public class Skolem
- extends LogicObject
Object whose identity and type are not fixed at creation time.
Potentially unifiable with any other object.
Method Summary |
static Stella_Object |
accessSkolemSlotValue(Skolem self,
Symbol slotname,
Stella_Object value,
boolean setvalueP)
|
static boolean |
anonymousVariableP(Skolem self)
|
static void |
bindSkolemToValue(Skolem fromskolem,
Stella_Object tovalue,
boolean toplevelupdateP)
|
static Surrogate |
computeRelationTermSurrogate(Skolem skolem,
Proposition proposition)
|
Cons |
conflictingDefaultValues()
|
static Stella_Object |
generateSkolem(Skolem self)
|
static java.lang.String |
getSkolemPrintName(Skolem self)
|
static Skolem |
helpCreateSkolem(Skolem self,
Surrogate type,
Symbol name,
boolean assertisaP)
|
static Proposition |
inheritEquivalentProposition(Skolem skolem,
Stella_Object value)
|
static void |
inheritVariableValueUpdate(Skolem skolem,
World toworld)
|
void |
markAsIncoherent()
|
static Skolem |
newSkolem()
|
boolean |
objectEqualP(Stella_Object other)
Return true if x and y are eqP . |
Surrogate |
primaryType()
Returns the primary type of self . |
static void |
printKifSkolem(Skolem self,
boolean suppressdefiningpropositionP)
|
static void |
printSkolem(Skolem self,
OutputStream stream,
boolean toplevelP)
|
static void |
printSkolemName(Skolem self,
OutputStream stream)
|
static void |
printValueOfChain(Skolem self,
OutputStream stream,
Stella_Object chainend)
|
static void |
pushLogicVariableBinding(Skolem variable)
|
void |
reactToInferenceUpdate()
|
static void |
reactToSkolemValueUpdate(Skolem skolem,
Stella_Object oldvalue,
Stella_Object newvalue,
boolean toplevelupdateP)
|
static void |
signalVariableValueClash(Skolem skolem,
Stella_Object value1,
Stella_Object value2)
|
static void |
unbindSkolemValue(Skolem skolem,
boolean toplevelupdateP)
|
static boolean |
unboundP(Skolem skolem)
|
static void |
unifySkolemAndValue(Skolem skolem,
Stella_Object value)
|
static void |
unifyTypes(Skolem term1,
Stella_Object term2)
|
static void |
updateSkolemType(Skolem self,
Surrogate type)
|
static boolean |
valueClashesWithSkolemP(Skolem skolem,
Stella_Object value)
|
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, elaboratedInWorlds, equivalenceCollections, equivalentCollectionPriority, evaluateLogicObjectTerm, evaluateReachableInequalities, evaluateRemainingArguments, expensiveEmptyTermP, filterInstanceP, generateCaseBasedAnswer, generateExpression, getMostSpecificClasses, getSlotMaximumCardinality, getSlotMinimumCardinality, getSlotValue, getSlotValueType, helpAllSupportedNamedSubcollections, helpCollectParentsBelowP, helpDerivePartitionMemberships, helpDownclassifyOneDescription, helpUpclassifyOneEntity, introductionTimestamp, logicObjectDinheritUnnamedDescription, logLogicObject, 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.StandardObject |
arrayTypeSpecifierP, baseTypeToTypeSpec, cantOverwriteActiveCollectionSlot, compatibleParameterTypesP, computeAnchoredTypeSpec, computeRelativeTypeSpec, conformingTypeSpecP, copyWrappedLiteral, cppReferenceTypeP, cppReferencizeType, cppTranslateAndPointerizeTypeSpec, cppTranslateAndReferencizeTypeSpec, cppTranslateTypeSpec, 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, amPm, anchoredTypeSpecifierP, andOrNotTreeP, applyCoercionMethod, atomicExpressionP, bindToSurrogateP, booleanP, bootstrapIsaP, bquotify, cast, characterP, clTranslateAtomicTree, clTranslateATree, clTranslateBooleanTest, clTranslatePlainBooleanTest, clTranslateVerbatimBodySymbols, clYieldTypedExpressionTree, coerceATree, coerceEvaluatedTree, coerceMvTree, coerceToBoolean, coerceToModule, coerceToModuleName, coerceToSymbol, coerceToXmlElement, coercibleP, collectFeatureList, collectKeyValueList, commonLispSymbolP, computeExpressionType, cons, 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, eqlToStringP, equalConsTreesP, equalHashCode, equalP, era, estimatedEvaluationCost, evaluate, evaluateArgumentTree, evaluateAtomicTree, evaluateCommand, expandBquoteTree, filterModuleP, floatP, free, get, getObject, hashlist, hashMemoizedArguments, helpBquotify, helpClTranslateATree, helpCoerceATree, helpLptrans, helpPrintOutline, 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, kvCons, legalTokenizerFromStateP, legalTokenizerStateP, legalTokenizerToStateP, literalEqlP, logLevelLE, lptrans, makeFileNameFromRelativePath, makeMemoizedValueEntry, makeMemoizedValueEntryn, matchConsTree, methodSlotP, minute, month, nameToString, nilP, noonMidn, numberWrapperToFloat, objectHashCode, one, oneI, onlyIf, parametricTypeSpecifierP, parseArrayDimensionsSpec, 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, 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, walkedExpressionType, walkExpressionTree, walkMvExpressionTree, walkMvTree, walkStatement, walkTopLevelExpression, walkWithoutTypeTree, warnAboutUnknownSourceType, weekday, withinContext, withinModule, withinWorld, withStellaTokenizer, withSystemDefinition, withTokenizer, wrapperP, wrapWhereTest, xmlAttributeP, xmlCdataFormP, xmlCdataP, xmlDeclarationFormP, xmlDeclarationP, xmlDoctypeFormP, xmlElementFormP, xmlElementP, 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 |
skolemType
public Surrogate skolemType
skolemName
public Symbol skolemName
variableValue
public Stella_Object variableValue
definingProposition
public Proposition definingProposition
Skolem
public Skolem()
newSkolem
public static Skolem newSkolem()
inheritEquivalentProposition
public static Proposition inheritEquivalentProposition(Skolem skolem,
Stella_Object value)
valueClashesWithSkolemP
public static boolean valueClashesWithSkolemP(Skolem skolem,
Stella_Object value)
generateSkolem
public static Stella_Object generateSkolem(Skolem self)
printSkolem
public static void printSkolem(Skolem self,
OutputStream stream,
boolean toplevelP)
printSkolemName
public static void printSkolemName(Skolem self,
OutputStream stream)
printValueOfChain
public static void printValueOfChain(Skolem self,
OutputStream stream,
Stella_Object chainend)
getSkolemPrintName
public static java.lang.String getSkolemPrintName(Skolem self)
printKifSkolem
public static void printKifSkolem(Skolem self,
boolean suppressdefiningpropositionP)
computeRelationTermSurrogate
public static Surrogate computeRelationTermSurrogate(Skolem skolem,
Proposition proposition)
pushLogicVariableBinding
public static void pushLogicVariableBinding(Skolem variable)
inheritVariableValueUpdate
public static void inheritVariableValueUpdate(Skolem skolem,
World toworld)
markAsIncoherent
public void markAsIncoherent()
- Overrides:
markAsIncoherent
in class LogicObject
reactToInferenceUpdate
public void reactToInferenceUpdate()
updateSkolemType
public static void updateSkolemType(Skolem self,
Surrogate type)
anonymousVariableP
public static boolean anonymousVariableP(Skolem self)
conflictingDefaultValues
public Cons conflictingDefaultValues()
unbindSkolemValue
public static void unbindSkolemValue(Skolem skolem,
boolean toplevelupdateP)
bindSkolemToValue
public static void bindSkolemToValue(Skolem fromskolem,
Stella_Object tovalue,
boolean toplevelupdateP)
unifySkolemAndValue
public static void unifySkolemAndValue(Skolem skolem,
Stella_Object value)
unifyTypes
public static void unifyTypes(Skolem term1,
Stella_Object term2)
signalVariableValueClash
public static void signalVariableValueClash(Skolem skolem,
Stella_Object value1,
Stella_Object value2)
objectEqualP
public boolean objectEqualP(Stella_Object other)
- Description copied from class:
Stella_Object
- Return true if
x
and y
are eqP
.
- Overrides:
objectEqualP
in class Stella_Object
- Returns:
- boolean
helpCreateSkolem
public static Skolem helpCreateSkolem(Skolem self,
Surrogate type,
Symbol name,
boolean assertisaP)
unboundP
public static boolean unboundP(Skolem skolem)
reactToSkolemValueUpdate
public static void reactToSkolemValueUpdate(Skolem skolem,
Stella_Object oldvalue,
Stella_Object newvalue,
boolean toplevelupdateP)
accessSkolemSlotValue
public static Stella_Object accessSkolemSlotValue(Skolem self,
Symbol slotname,
Stella_Object value,
boolean setvalueP)
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