; Sat May 03 16:18:24 EDT 2003 ; ;+ (version "1.8") ;+ (build "Build 981") (defclass %3ACLIPS_TOP_LEVEL_SLOT_CLASS (is-a USER) (role concrete) (single-slot copy ;+ (comment "relates an &%Object to an exact copy of the &%Object, where an exact copy is indistinguishable from the original with regard to every property except (possibly) spatial and/or temporal location.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot length ;+ (comment "&%BinaryPredicate that is used to state the measure of an &%Object from one point to another point along its surface. Note that the difference between the predicates &%length and &%distance is that the &%length is used to state the &%LengthMeasure of one of the dimensions of a single object, while &%distance is used to state the &%LengthMeasure that separates two distinct objects.") (type INSTANCE) ;+ (allowed-classes LengthMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot SkinFn ;+ (comment "A &%UnaryFunction that maps a &%Hole to the skin of the &%Hole. The skin of a &%Hole is the fusion of those superficial parts (see &%superficialPart) of the &%Hole's principal host (see &%PrincipalHostFn) with which the &%Hole is externally connected.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot relatedInternalConcept ;+ (comment "Means that the two arguments are related concepts within the SUMO, i.e. there is a significant similarity of meaning between them. To indicate a meaning relation between a SUMO concept and a concept from another source, use the Predicate &%relatedExternalConcept.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot RemainderFn ;+ (comment "(RemainderFn ?NUMBER ?DIVISOR) is the remainder of the number ?NUMBER divided by the number ?DIVISOR. The result has the same sign as ?DIVISOR.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot PredecessorFn ;+ (comment "A &%UnaryFunction that maps an &%Integer to its predecessor, e.g. the predecessor of 5 is 4.") (type INSTANCE) ;+ (allowed-classes Integer) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot greaterThan ;+ (comment "(&%greaterThan ?NUMBER1 ?NUMBER2) is true just in case the &%Quantity ?NUMBER1 is greater than the &%Quantity ?NUMBER2.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot beforeOrEqual ;+ (comment "(&%beforeOrEqual ?POINT1 ?POINT2) means that ?POINT1 is identical with ?POINT2 or occurs before it on the universal timeline.") (type INSTANCE) ;+ (allowed-classes TimePoint) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot relatedExternalConcept ;+ (comment "Used to signify a three-place relation between a concept in an external knowledge source, a concept in the SUMO, and the name of the other knowledge source.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot SeriesVolumeFn ;+ (comment "A &%BinaryFunction that maps a type of &%Series (e.g. the Encyclopedia_Britannica or the Popular_Mechanics periodical) and a number to the volumes of the text type designated by the number.") (type INSTANCE) ;+ (allowed-classes PositiveInteger) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot YearFn ;+ (comment "A &%UnaryFunction that maps a number to the corresponding calendar &%Year. For example, (&%YearFn 1912) returns the &%Class containing just one instance, the year of 1912. As might be expected, positive integers return years in the Common Era, while negative integers return years in B.C.E. Note that this function returns a &%Class as a value. The reason for this is that the related functions, viz. &%MonthFn, &%DayFn, &%HourFn, &%MinuteFn, and &%SecondFn, are used to generate both specific &%TimeIntervals and recurrent intervals, and the only way to do this is to make the domains and ranges of these functions classes rather than individuals.") (type INSTANCE) ;+ (allowed-classes Year) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot EndNodeFn ;+ (comment "A &%UnaryFunction that maps a &%GraphPath to the &%GraphNode that is the end of the &%GraphPath. Note that, unlike &%TerminalNodeFn (which relates a &%GraphArc to a &%GraphNode), &%EndNodeFn is a total function - every &%GraphPath has a end.") (type INSTANCE) ;+ (allowed-classes GraphNode) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot subProcess ;+ (comment "(&%subProcess ?SUBPROC ?PROC) means that ?SUBPROC is a subprocess of ?PROC. A subprocess is here understood as a temporally distinguished part (proper or not) of a &%Process.") (type INSTANCE) ;+ (allowed-classes Process) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot measure ;+ (comment "A very general &%Predicate for asserting that a particular &%Object is measured by a particular &%ConstantQuantity. In general, the second argument of this &%Predicate will be an instance of the &%Function &%MeasureFn.") (type INSTANCE) ;+ (allowed-classes PhysicalQuantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot ExtensionFn ;+ (comment "A &%UnaryFunction that maps a &%Class into the instance of &%Attribute that specifies the condition(s) for membership in the &%Class.") (type INSTANCE) ;+ (allowed-classes Class) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot GraphPathFn ;+ (comment "A &%BinaryFunction that maps two &%GraphNodes to the &%Class of &%GraphPaths between those two nodes. Note that the two &%GraphNodes must belong to the same &%Graph.") (type INSTANCE) ;+ (allowed-classes GraphNode) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot InitialNodeFn ;+ (comment "A &%UnaryFunction that maps a &%GraphArc to the initial node of the &%GraphArc. Notethat this is a partial function. In particular, the function is undefined for &%GraphArcs that are not part of a &%DirectedGraph.") (type INSTANCE) ;+ (allowed-classes GraphNode) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot BackFn ;+ (comment "A &%Function that maps an &%Object to the side that is opposite the &%FrontFn of the &%Object. Note that this is a partial function, since some &%Objects do not have sides, e.g. apples and spheres. Note too that the &%range of this &%Function is indefinite in much the way that &%ImmediateFutureFn and &%ImmediatePastFn are indefinite. Although this indefiniteness is undesirable from a theoretical standpoint, it does not have significant practical implications, since there is widespread intersubjective agreement about the most common cases.") (type INSTANCE) ;+ (allowed-classes SelfConnectedObject) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot AbstractionFn ;+ (comment "A &%UnaryFunction that maps a &%Class into the instance of &%Attribute that specifies the condition(s) for membership in the &%Class.") (type INSTANCE) ;+ (allowed-classes Attribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot successorAttributeClosure ;+ (comment "The transitive closure of &%successorAttribute. (&%successorAttributeClosure ?ATTR1 ?ATTR2) means that there is a chain of &%successorAttribute assertions connecting ?ATTR1 and ?ATTR2.") (type INSTANCE) ;+ (allowed-classes Attribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot temporalPart ;+ (comment "The temporal analogue of the spatial &%part predicate. (&%temporalPart ?POS1 ?POS2) means that &%TimePosition ?POS1 is part of &%TimePosition ?POS2. Note that since &%temporalPart is a &%ReflexiveRelation every &%TimePostion is a &%temporalPart of itself.") (type INSTANCE) ;+ (allowed-classes TimePosition) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot SUO-name (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot believes ;+ (comment "The epistemic predicate of belief. (&%believes ?AGENT ?FORMULA) means that ?AGENT believes the proposition expressed by ?FORMULA.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot IntersectionFn ;+ (comment "A &%BinaryFunction that maps two %SetOrClasses to the intersection of these &%SetOrClasses. An object is an instance of the intersection of two &%SetOrClasses just in case it is an instance of both of those &%SetOrClasses.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot disjoint ;+ (comment "&%Classes are &%disjoint only if they share no instances, i.e. just in case the result of applying &%IntersectionFn tothem is empty.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot SuccessorFn ;+ (comment "A &%UnaryFunction that maps an &%Integer to its successor, e.g. the successor of 5 is 6.") (type INSTANCE) ;+ (allowed-classes Integer) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot exists ;+ (comment "The existential quantifier of predicate logic.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot pathLength ;+ (comment "A &%BinaryPredicate that specifies the length (in number of &%GraphNodes) of a &%GraphPath.(&%pathLength ?PATH ?NUMBER) means that there are ?NUMBER nodes in the &%GraphPath ?PATH.") (type INSTANCE) ;+ (allowed-classes PositiveInteger) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot subAttribute ;+ (comment "Means that the second argument can be ascribed to everything which has the first argument ascribed to it.") (type INSTANCE) ;+ (allowed-classes Attribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot equivalenceRelationOn ;+ (comment "A &%BinaryRelation is an &%equivalenceRelationOn a &%SetOrClass only if the relation is &%reflexiveOn the &%SetOrClass and it is both a &%TransitiveRelation and a &%SymmetricRelation.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot subProposition ;+ (comment "(&%subProposition ?PROP1 ?PROP2) means that ?PROP1 is a &%Proposition which is a proper part of the &%Proposition ?PROP2. In other words, &%subProposition is the analogue of &%properPart for chunks of abstract content.") (type INSTANCE) ;+ (allowed-classes Proposition) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot decreasesLikelihood ;+ (comment "One of the basic &%ProbabilityRelations. (&%decreasesLikelihood ?FORMULA1 ?FORMULA2) means that ?FORMULA2 is less likely to be true if ?FORMULA1 is true.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot domainSubclass ;+ (comment "&%Predicate used to specify argument type restrictions of &%Predicates. The formula (&%domainSubclass ?REL ?INT ?CLASS) means that the ?INT'th element of each tuple in the relation ?REL must be a subclass of ?CLASS.") (type INSTANCE) ;+ (allowed-classes PositiveInteger) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot WhereFn ;+ (comment "Maps an &%Object and a &%TimePoint at which the &%Object exists to the &%Region where the &%Object existed at that &%TimePoint.") (type INSTANCE) ;+ (allowed-classes TimePoint) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot NumeratorFn ;+ (comment "(&%NumeratorFn ?NUMBER) returns the numerator of the canonical reduced form ?NUMBER.") (type INSTANCE) ;+ (allowed-classes Integer) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot greaterThanOrEqualTo ;+ (comment "(&%greaterThanOrEqualTo ?NUMBER1 ?NUMBER2) is true just in case the &%Quantity ?NUMBER1 is greater than the &%Quantity ?NUMBER2.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot SignumFn ;+ (comment "(SignumFn ?NUMBER) denotes the sign of ?NUMBER. This is one of the following values: -1, 1, or 0.") (type INSTANCE) ;+ (allowed-classes Integer) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot earlier ;+ (comment "(earlier INTERVAL1 INTERVAL2) means that INTERVAL1 ends before INTERVAL2 begins.") (type INSTANCE) ;+ (allowed-classes TimeInterval) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot IntervalFn ;+ (comment "A &%BinaryFunction that maps two &%ConstantQuantities to the &%Class of &%ConstantQuantities that comprise the interval from the first &%ConstantQuantity to the second &%ConstantQuantity. For example, (&%IntervalFn (&%MeasureFn 8 &%Meter) (&%MeasureFn 14 &%Meter)) would return the &%Class of &%ConstantQuantities between 8 and 14 meters in length.") (type INSTANCE) ;+ (allowed-classes ConstantQuantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot material ;+ (comment "(&%material ?SUBSTANCE ?OBJECT) means that ?OBJECT is structurally made up in part of ?SUBSTANCE. This relation encompasses the concepts of 'composed of', 'made of', and 'formed of'. For example, plastic is a &%material of my computer monitor. Compare &%part and its subrelations, viz &%component and &%piece.") (type INSTANCE) ;+ (allowed-classes CorpuscularObject) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot connected ;+ (comment "(connected ?OBJ1 ?OBJ2) means that ?OBJ1 &%meetsSpatially ?OBJ2 or that ?OBJ1 &%overlapsSpatially ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot holdsObligation ;+ (comment "Expresses a relationship between a &%Formula and a &%CognitiveAgent whereby the &%CognitiveAgent has the obligation to bring it about that the &%Formula is true.") (type INSTANCE) ;+ (allowed-classes CognitiveAgent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot DivisionFn ;+ (comment "If ?NUMBER1 and ?NUMBER2 are &%Numbers, then (&%DivisionFn ?NUMBER1 ?NUMBER2) is the result of dividing ?NUMBER1 by ?NUMBER2. An exception occurs when ?NUMBER1 = 1, in which case (&%DivisionFn ?NUMBER1 ?NUMBER2) is the reciprocal of ?NUMBER2.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot ReciprocalFn ;+ (comment "(ReciprocalFn ?NUMBER) is the reciprocal element of ?NUMBER with respect to the multiplication operator (&%MultiplicationFn), i.e. 1/?NUMBER. Not all numbers have a reciprocal element. For example the number 0 does not. If a number ?NUMBER has a reciprocal ?RECIP, then the product of ?NUMBER and ?RECIP will be 1, e.g. 3*1/3 = 1. The reciprocal of an element is &%equal to applying the &%ExponentiationFn function to the element to the power -1.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot TangentFn ;+ (comment "(&%TangentFn ?DEGREE) is the tangent of the &%PlaneAngleMeasure ?DEGREE. The tangent of ?DEGREE is the ratio of the side opposite ?DEGREE to the side next to ?DEGREE in a right-angled triangle.") (type INSTANCE) ;+ (allowed-classes RealNumber) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot AdditionFn ;+ (comment "If ?NUMBER1 and ?NUMBER2 are &%Numbers, then (&%AdditionFn ?NUMBER1 ?NUMBER2) is the arithmetical sum of these numbers.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot TimeIntervalFn ;+ (comment "A &%BinaryFunction that takes two &%TimePoints as arguments and returns the &%TimeInterval defined by these two &%TimePoints. Note that the first &%TimePoint must occur earlier than the second &%TimePoint.") (type INSTANCE) ;+ (allowed-classes TimePoint) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot or ;+ (comment "The truth-functional connective of disjunction.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot FrontFn (type INSTANCE) ;+ (allowed-classes SelfConnectedObject) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot connectedEngineeringComponents ;+ (comment "This is the most general connection relation between &%EngineeringComponents. If (&%connectedEngineeringComponents ?COMP1 ?COMP2), then neither ?COMP1 nor ?COMP2 can be an &%engineeringSubcomponent of the other. The relation &%connectedEngineeringComponents is a &%SymmetricRelation; there is no information in the direction of connection between two components. It is also an &%IrreflexiveRelation; no &%EngineeringComponent bears this relation to itself. Note that this relation does not associate a name or type with the connection.") (type INSTANCE) ;+ (allowed-classes EngineeringComponent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot starts ;+ (comment "(&%starts ?INTERVAL1 ?INTERVAL2) means that ?INTERVAL1 and ?INTERVAL2 are both &%TimeIntervals that have the same initial &%TimePoint and that ?INTERVAL1 ends before ?INTERVAL2.") (type INSTANCE) ;+ (allowed-classes TimeInterval) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot considers ;+ (comment "(&%considers ?AGENT ?FORMULA) means that ?AGENT considers or wonders about the truth of the proposition expressed by ?FORMULA.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MinimalWeightedPathFn ;+ (comment "This &%BinaryFunction assigns two &%GraphNodes to the &%GraphPath with the smallest sum of weighted arcs between the two &%GraphNodes.") (type INSTANCE) ;+ (allowed-classes GraphNode) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot authors ;+ (comment "(&%authors ?AGENT ?TEXT) means that ?AGENT is creatively responsible for ?TEXT. For example, Agatha Christie is author of Murder_on_the_Orient_Express.") (type INSTANCE) ;+ (allowed-classes Text) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot origin ;+ (comment "(&%origin ?PROCESS ?SOURCE) means that ?SOURCE indicates where the ?Process began. Note that this relation implies that ?SOURCE is present at the beginning of the process, but need not participate throughout the process. For example, the submarine is the &%origin in the following proposition: the missile was launched from a submarine.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot inList ;+ (comment "The analog of &%element and &%instance for &%Lists. (&%inList ?OBJ ?LIST) means that ?OBJ is in the &%List ?LIST. For example, (&%inList &%Tuesday (&%ListFn &%Monday &%Tuesday &%Wednesday)) would be true.") (type INSTANCE) ;+ (allowed-classes List) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot hasPurposeForAgent ;+ (comment "Expresses a cognitive attitude of an agent with respect to a particular instance of Physical. More precisely, (&%hasPurposeForAgent ?THING ?FORMULA ?AGENT) means that the purpose of ?THING for ?AGENT is the proposition expressed by ?FORMULA. Very complex issues are involved here. In particular, the rules of inference of the first order predicate calculus are not truth-preserving for the second argument position of this &%Predicate.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot holds ;+ (comment "(holds P N1 ... NK) is true just in case the tuple of objects denoted by N1,..., NK is an element of the &%Relation P.") (type INSTANCE) ;+ (allowed-classes List) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot wants ;+ (comment "(&%wants ?AGENT ?OBJECT) means that ?OBJECT is desired by ?AGENT, i.e. ?AGENT believes that ?OBJECT will satisfy one of its goals. Note that there is no implication that what is wanted by an agent is not already possessed by the agent.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot smaller ;+ (comment "(&%smaller ?OBJ1 ?OBJ2) simply means that ?OBJ1 is smaller, with respect to all &%LengthMeasures, than ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot confersObligation ;+ (comment "Expresses the relationship between a a &%Formula, an &%Entity, and a &%CognitiveAgent when the &%Entity obligates the &%CognitiveAgent to bring it about that the &%Formula is true.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot EndFn ;+ (comment "A &%UnaryFunction that maps a &%TimeInterval to the &%TimePoint at which the interval ends.") (type INSTANCE) ;+ (allowed-classes TimePoint) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MinimalCutSetFn ;+ (comment "A &%UnaryFunction that assigns a &%Graph the &%Class of &%GraphPaths which comprise cutsets for the &%Graph and which have the least number of &%GraphArcs.") (type INSTANCE) ;+ (allowed-classes GraphPath) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot LogFn ;+ (comment "(LogFn ?NUMBER ?INT) returns the logarithm of the &%RealNumber ?NUMBER in the base denoted by the &%Integer ?INT.") (type INSTANCE) ;+ (allowed-classes PositiveInteger) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot DenominatorFn ;+ (comment "(&%DenominatorFn ?NUMBER) returns the denominator of the canonical reduced form of the &%RealNumber ?NUMBER.") (type INSTANCE) ;+ (allowed-classes Integer) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot ComplementFn ;+ (comment "The complement of a given &%SetOrClass C is the &%SetOrClass of all things that are not instances of C. In other words, an object is an instance of the complement of a &%SetOrClass C just in case it is not an instance of C.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot subCollection ;+ (comment "(&%subCollection ?COLL1 ?COLL2) means that the &%Collection ?COLL1 is a proper part of the &%Collection ?COLL2.") (type INSTANCE) ;+ (allowed-classes Collection) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot notices ;+ (comment "(&%notices ?AGENT ?OBJECT) means that ?AGENT is paying attention to ?OBJECT, that ?OBJECT is currently the object of ?AGENT's conscious awareness.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MaximalWeightedPathFn ;+ (comment "This &%BinaryFunction assigns two &%GraphNodes to the &%GraphPath with the largest sum of weighted arcs between the two &%GraphNodes.") (type INSTANCE) ;+ (allowed-classes GraphNode) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot conditionalProbability ;+ (comment "One of the basic &%ProbabilityRelations. &%conditionalProbability is used to state the numeric value of a conditional probability. (&%conditionalProbability ?FORMULA1 ?FORMULA2 ?NUMBER) means that the probability of ?FORMULA2 being true given that ?FORMULA1 is true is ?NUMBER.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot hole ;+ (comment "(&%hole ?HOLE ?OBJ) means that ?HOLE is a &%Hole in ?OBJ. A &%Hole is a fillable body located at the &%surface an &%Object.") (type INSTANCE) ;+ (allowed-classes SelfConnectedObject) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot holdsRight ;+ (comment "Expresses a relationship between a &%Formula and a &%CognitiveAgent whereby the &%CognitiveAgent has the right to bring it about that the &%Formula is true.") (type INSTANCE) ;+ (allowed-classes CognitiveAgent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot element ;+ (comment "(element ?ENTITY ?SET) is true just in case ?ENTITY is contained in the &%Set ?SET. An &%Entity can be an &%element of another &%Entity only if the latter is a &%Set.") (type INSTANCE) ;+ (allowed-classes Set) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot instance ;+ (comment "An object is an &%instance of a &%SetOrClass if it is included in that &%SetOrClass. An individual may be an instance of many classes, some of which may be subclasses of others. Thus, there is no assumption in the meaning of &%instance about specificity or uniqueness.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot valence ;+ (comment "Specifies the number of arguments that a relation can take. If a relation does not have a fixed number of arguments, it does not have a valence and it is an instance of &%VariableArityRelation. For example, &%holds is a &%VariableArityRelation.") (type INSTANCE) ;+ (allowed-classes PositiveInteger) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot links ;+ (comment "a &%TernaryPredicate that specifies the &%GraphArc connecting two &%GraphNodes.") (type INSTANCE) ;+ (allowed-classes GraphNode) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot properlyFills ;+ (comment "(&%properlyFills ?OBJ ?HOLE) means that ?HOLE is properly (though perhaps incompletely) filled by ?OBJ, i.e. some part of ?HOLE is perfectly filled by ?OBJ. Note that &%properlyFills is the dual of &%completelyFills, and is so related to &%partiallyFills that ?OBJ &%properlyFills ?HOLE just in case ?OBJ &%partiallyFills every part of ?HOLE. (Thus, every perfect filler is both complete and proper in this sense).") (type INSTANCE) ;+ (allowed-classes Hole) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot lessThan ;+ (comment "(&%lessThan ?NUMBER1 ?NUMBER2) is true just in case the &%Quantity ?NUMBER1 is less than the &%Quantity ?NUMBER2.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot father ;+ (comment "The general relationship of fatherhood. (&%father ?CHILD ?FATHER) means that ?FATHER is the biological fatherof ?CHILD.") (type INSTANCE) ;+ (allowed-classes Organism) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot possesses ;+ (comment "&%Relation that holds between an &%Agent and an &%Object when the &%Agent has ownership of the &%Object.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot PicoFn ;+ (comment "A &%UnaryFunction that maps a &%UnitOfMeasure into a &%UnitOfMeasure that is equal to .000000000001 units of the original &%UnitOfMeasure. For example, (&%PicoFn &%Ampere) is .000000000001 &%Amperes.") (type INSTANCE) ;+ (allowed-classes UnitOfMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot graphPart ;+ (comment "A basic relation for &%Graphs and their parts. (&%graphPart ?PART ?GRAPH) means that ?PART is a &%GraphArc or &%GraphNode of the &%Graph ?GRAPH.") (type INSTANCE) ;+ (allowed-classes Graph) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot CosineFn ;+ (comment "(&%CosineFn ?DEGREE) returns the cosine of the &%PlaneAngleMeasure ?DEGREE. The cosine of ?DEGREE is the ratio of the side next to ?DEGREE to the hypotenuse in a right-angled triangle.") (type INSTANCE) ;+ (allowed-classes RealNumber) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot temporallyBetweenOrEqual ;+ (comment "(&%temporallyBetweenOrEqual ?POINT1 ?POINT2 ?POINT3) means that the &%TimePoint ?POINT1 is before or equal to the &%TimePoint ?POINT2 and ?POINT2 is before or equal to the &%TimePoint ?POINT3.") (type INSTANCE) ;+ (allowed-classes TimePoint) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot needs ;+ (comment "(&%needs ?AGENT ?OBJECT) means that ?OBJECT is physically required for the continued existence of ?AGENT.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot mother ;+ (comment "The general relationship of motherhood. (&%mother ?CHILD ?MOTHER) means that ?MOTHER is the biological mother of ?CHILD.") (type INSTANCE) ;+ (allowed-classes Organism) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot RationalNumberFn ;+ (comment "(&%RationalNumberFn ?NUMBER) returns the rational representation of ?NUMBER.") (type INSTANCE) ;+ (allowed-classes RationalNumber) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot publishes ;+ (comment "(&%publishes ?ORG ?TEXT) means that ?ORG publishes ?TEXT. For example, Bantam Books publishes Agatha Christie's Murder_on_the_Orient_Express.") (type INSTANCE) ;+ (allowed-classes Text) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot prefers ;+ (comment "(&%prefers ?AGENT ?FORMULA1 ?FORMULA2) means that &%CognitiveAgent ?AGENT prefers the state of affairs expressed by ?FORMULA1over the state of affairs expressed by ?FORMULA2 all things being equal.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot PeriodicalIssueFn ;+ (comment "A &%BinaryFunction that maps a subclass of &%Periodical and a number to all of the issues of the &%Periodical corresponding to the number.") (type INSTANCE) ;+ (allowed-classes PositiveInteger) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot RelativeTimeFn ;+ (comment "A means of converting &%TimePositions between different &%TimeZones. (&%RelativeTimeFn ?TIME ?ZONE) denotes the &%TimePosition in &%CoordinatedUniversalTime that is contemporaneous with the &%TimePosition ?TIME in &%TimeZone ?ZONE. For example, (&%RelativeTimeFn (&%MeasureFn 14 &%Hour) &%EasternTimeZone) would return the value (&%MeasureFn 19 &%Hour).") (type INSTANCE) ;+ (allowed-classes TimeZone) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot PowerSetFn ;+ (comment "(&%PowerSetFn ?CLASS) maps the &%SetOrClass ?CLASS to the &%SetOrClass of all &%subclasses of ?CLASS.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot path ;+ (comment "(&%path ?MOTION ?PATH) means that ?PATH is a route along which ?MOTION occurs. For example, Highway 101 is the path in the following proposition: the car drove up Highway 101.") (type INSTANCE) ;+ (allowed-classes Region) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot TemporalCompositionFn ;+ (comment "The basic &%Function for expressing the composition of larger &%TimeIntervals out of smaller &%TimeIntervals. For example, if &%ThisSeptember is an &%instance of &%September, (&%TemporalCompositionFn &%ThisSeptember &%Day) denotes the &%Class of consecutive days that make up &%ThisSeptember. Note that one can obtain the number of instances of this &%Class by using the function &%CardinalityFn.") (type INSTANCE) ;+ (allowed-classes TimeInterval) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot age ;+ (comment "Simply relates an &%Object to a &%ConstantQuantity specifying the age of the &%Object.") (type INSTANCE) ;+ (allowed-classes TimeDuration) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot closedOn ;+ (comment "A &%BinaryFunction is closed on a &%SetOrClass if it is defined for all instances of the &%SetOrClass and its value is always an instance of the &%SetOrClass.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot temporallyBetween ;+ (comment "(&%temporallyBetween ?POINT1 ?POINT2 ?POINT3) means that the &%TimePoint ?POINT2 is between the &%TimePoints ?POINT1 and ?POINT3, i.e. ?POINT1 is before ?POINT2 and ?POINT2 is before ?POINT3.") (type INSTANCE) ;+ (allowed-classes TimePoint) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot located ;+ (comment "A very general predicate. (&%located ?PHYS ?OBJ) means that ?PHYS is situated at ?OBJ, in some sense. The &%Predicates &%located and &%time are spatial and temporal predicates, respectively.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot patient ;+ (comment "(&%patient ?PROCESS ?ENTITY) means that ?ENTITY is a participant in ?PROCESS that may be moved, said, experienced, etc. For example, the direct objects in the sentences 'The cat swallowed the canary' and 'Billy likes the beer' would be examples of &%patients. Note that the &%patient of a &%Process may or may not undergo structural change as a result of the &%Process. The &%CaseRole of &%patient is used when one wants to specify as broadly as possible the object of a &%Process.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot SubtractionFn ;+ (comment "If ?NUMBER1 and ?NUMBER2 are &%Numbers, then (&%SubtractionFn ?NUMBER1 ?NUMBER2) is the arithmetical difference between ?NUMBER1 and ?NUMBER2, i.e. ?NUMBER1 minus ?NUMBER2. An exception occurs when ?NUMBER1 is equal to 0, in which case (&%SubtractionFn ?NUMBER1 ?NUMBER2) is the negation of ?NUMBER2.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot VelocityFn ;+ (comment "Specifies the velocity of an object, i.e. the speed and the direction of the speed. For example (&%VelocityFn (&%MeasureFn 55 &%Mile) (&%MeasureFn 2 &%HourDuration) ?REFERENCE &%North) denotes the velocity of 55 miles per hour North of the given reference point ?REFERENCE.") (type INSTANCE) ;+ (allowed-classes TimeDuration) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot CeilingFn ;+ (comment "(&%CeilingFn ?NUMBER) returns the smallest &%Integer greater than or equal to the &%RealNumber ?NUMBER.") (type INSTANCE) ;+ (allowed-classes Integer) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot duration ;+ (comment "(&%duration ?POS ?TIME) means that the duration of the &%TimePosition ?POS is ?TIME. Note that this &%Predicate can be used in conjunction with the &%Function &%WhenFn to specify the duration of any instance of &%Physical.") (type INSTANCE) ;+ (allowed-classes TimeDuration) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MultiplicationFn ;+ (comment "If ?NUMBER1 and ?NUMBER2 are &%Numbers, then (&%MultiplicationFn ?NUMBER1 ?NUMBER2) is the arithmetical product of these numbers.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot FloorFn ;+ (comment "(&%FloorFn ?NUMBER) returns the largest &%Integer less than or equal to the &%RealNumber ?NUMBER.") (type INSTANCE) ;+ (allowed-classes Integer) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot finishes ;+ (comment "(&%finishes ?INTERVAL1 ?INTERVAL2) means that ?INTERVAL1 and ?INTERVAL2 are both &%TimeIntervals that have the same ending &%TimePoint and that ?INTERVAL2 begins before ?INTERVAL1.") (type INSTANCE) ;+ (allowed-classes TimeInterval) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot before ;+ (comment "(&%before ?POINT1 ?POINT2) means that ?POINT1 precedes ?POINT2 on the universal timeline.") (type INSTANCE) ;+ (allowed-classes TimePoint) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AArg4 ;+ (comment "The fourth argument of a quaternary or higher-arity slot.") (type SYMBOL) ;+ (allowed-parents) ;+ (cardinality 0 1) ;+ (associated-facet SUMO148_00001) (create-accessor read-write)) (single-slot rangeSubclass ;+ (comment "(&%rangeSubclass ?FUNCTION ?CLASS) means that all of the values assigned by ?FUNCTION are &%subclasses of ?CLASS.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot manner (type INSTANCE) ;+ (allowed-classes Attribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot AbsoluteValueFn ;+ (comment "The value of (&%AbsoluteValueFn ?NUMBER) is the absolute value of the &%RealNumber ?NUMBER.") (type INSTANCE) ;+ (allowed-classes NonnegativeRealNumber) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot PathWeightFn ;+ (comment "A &%UnaryFunction that maps a &%GraphPath to the sum of the &%arcWeights on the &%GraphArcs in the &%GraphPath.") (type INSTANCE) ;+ (allowed-classes RealNumber) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MereologicalProductFn ;+ (comment "(&%MereologicalProductFn ?OBJ1 ?OBJ2) denotes the &%Object consisting of the parts which belong to both ?OBJ1 and ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot hasPurpose ;+ (comment "This &%Predicate expresses the concept of a conventional goal, i.e. a goal with a neutralized agent's intention. Accordingly, (&%hasPurpose ?THING ?FORMULA) means that the instance of &%Physical ?THING has, as its purpose, the &%Proposition expressed by ?FORMULA. Note that there is an important difference in meaning between the &%Predicates &%hasPurpose and &%result. Although the second argument of the latter can satisfy the second argument of the former, a conventional goal is an expected and desired outcome, while a result may be neither expected nor desired. For example, a machine process may have outcomes but no goals, aimless wandering may have an outcome but no goal; a learning process may have goals with no outcomes, and so on.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot RoundFn ;+ (comment "(&%RoundFn ?NUMBER) is the &%Integer closest to ?NUMBER on the number line. If ?NUMBER is halfway between two &%Integers (for example 3.5), it denotes the larger &%Integer.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot EditionFn ;+ (comment "A &%BinaryFunction that maps a type of text (e.g. Agatha Christie's Murder_on_the_Orient_Express) and a number to the edition of the text type corresponding to the number.") (type INSTANCE) ;+ (allowed-classes ContentBearingObject) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot inverse ;+ (comment "The inverse of a &%BinaryRelation is a relation in which all the tuples of the original relation are reversed. In other words, one &%BinaryRelation is the inverse of another if they are equivalent when their arguments are swapped.") (type INSTANCE) ;+ (allowed-classes BinaryRelation) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot successorAttribute ;+ (comment "(&%successorAttribute ?ATTR1 ?ATTR2) means that ?ATTR2 is the &%Attribute that comes immediately after ?ATTR1 on the scale that they share.") (type INSTANCE) ;+ (allowed-classes Attribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot larger ;+ (comment "(&%larger ?OBJ1 ?OBJ2) simply means that ?OBJ1 is larger, with respect to all &%LengthMeasures, than ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot capability ;+ (comment "(&%capability ?PROCESS ?ROLE ?OBJ) means that ?OBJ has the ability to play the role of ?ROLE in &%Processes of type ?PROCESS.") (type INSTANCE) ;+ (allowed-classes CaseRole) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot cooccur ;+ (comment "(&%cooccur ?THING1 ?THING2) means that the &%Object or &%Process ?THING1 occurs at the same time as, together with, or jointly with the &%Object or &%Process ?THING2. This covers the following temporal relations: is co-incident with, is concurrent with, is contemporaneous with, and is concomitant with.") (type INSTANCE) ;+ (allowed-classes Physical) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MilliFn ;+ (comment "A &%UnaryFunction that maps a &%UnitOfMeasure into a &%UnitOfMeasure that is equal to .001 units of the original &%UnitOfMeasure. For example, (&%MilliFn &%Ampere) is .001 &%Amperes.") (type INSTANCE) ;+ (allowed-classes UnitOfMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot inScopeOfInterest ;+ (comment "A very general &%Predicate. (&%inScopeOfInterest ?AGENT ?ENTITY) means that ?ENTITY is within the scope of interest of ?AGENT. Note that the interest indicated can be either positive or negative, i.e. the ?AGENT can have an interest in avoiding or promoting ?ENTITY.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot ListOrderFn ;+ (comment "(&%ListOrderFn ?LIST ?NUMBER) denotes the item that is in the ?NUMBER position in the &%List ?LIST. For example, (&%ListOrderFn (&%ListFn &%Monday &%Tuesday &%Wednesday) 2) would return the value &%Tuesday.") (type INSTANCE) ;+ (allowed-classes PositiveInteger) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot partlyLocated ;+ (comment "The predicate of partial localization. For example, Istanbul is partly located in Asia. Note that this is the most basic localization relation: &%located and &%exactlyLocated are both subrelations of &%partlyLocated.") (type INSTANCE) ;+ (allowed-classes Region) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot editor ;+ (comment "(&%editor ?AGENT ?TEXT) means that ?AGENT is an editor of ?TEXT.") (type INSTANCE) ;+ (allowed-classes Text) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot PropertyFn ;+ (comment "A &%UnaryFunction that maps an &%Agent to the &%Set of &%Property owned by the &%Agent.") (type INSTANCE) ;+ (allowed-classes Set) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot date ;+ (comment "A &%BinaryPredicate that specifies a &%TimePosition in absolute calendar time, at the resolution of one day, for a particular &%Object or &%Process.") (type INSTANCE) ;+ (allowed-classes Day) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MegaFn ;+ (comment "A &%UnaryFunction that maps a &%UnitOfMeasure into a &%UnitOfMeasure that is equal to 1,000,000 units of the original &%UnitOfMeasure. For example, (&%KiloFn &%Hertz) is 1,000,000 &%Hertz.") (type INSTANCE) ;+ (allowed-classes UnitOfMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot causes ;+ (comment "The causation relation between instances of &%Process. (&%causes ?PROCESS1 ?PROCESS2) means that the instance of &%Process ?PROCESS1 brings about the instance of &%Process ?PROCESS2, e.g. (&%causes &%Killing &%Death).") (type INSTANCE) ;+ (allowed-classes Process) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot trichotomizingOn ;+ (comment "A &%BinaryRelation ?REL is trichotomizing on a &%SetOrClass only if, for all instances ?INST1 and ?INST2 of the &%SetOrClass, at least one of the following holds: (?REL ?INST1 ?INST2),(?REL ?INST2 ?INST1) or (equal ?INST1 ?INST2).") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MagnitudeFn ;+ (comment "The magnitude of a &%ConstantQuantity is the numeric value for the quantity. In other words, &%MagnitudeFn converts a &%ConstantQuantity with an associated &%UnitOfMeasure into an ordinary &%RealNumber. For example, the magnitude of the &%ConstantQuantity 2 &%Kilometers is the &%RealNumber 2. Note that the magnitude of a quantity in a given unit times that unit is equal to the original quantity.") (type INSTANCE) ;+ (allowed-classes RealNumber) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3D%3E ;+ (comment "The truth-functional connective of implication.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot subrelation ;+ (comment "A &%Relation R is a &%subrelation &%Relation R' if R is a &%subclass R'. This implies that every tuple of R is also a tuple of R'. Again, if R holds for some arguments arg_1, arg_2, ... arg_n, then R' holds for the same arguments. Thus, a &%Relation and its subrelation must have the same valence. In CycL, &%subrelation is called #$genlPreds.") (type INSTANCE) ;+ (allowed-classes Relation) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot PastFn ;+ (comment "A &%UnaryFunction that maps a &%TimePosition to the &%TimeInterval that meets it and that begins at &%NegativeInfinity.") (type INSTANCE) ;+ (allowed-classes TimeInterval) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot lessThanOrEqualTo ;+ (comment "(&%lessThanOrEqualTo ?NUMBER1 ?NUMBER2) is true just in case the &%Quantity ?NUMBER1 is less than or equal to the &%Quantity ?NUMBER2.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot property ;+ (comment "This &%Predicate holds between an instance of &%Entity and an instance of &%Attribute. (property ?ENTITY ?ATTR) means that ?ENTITY has the &%Attribute ?ATTR.") (type INSTANCE) ;+ (allowed-classes Attribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot and ;+ (comment "The truth-functional connective of conjunction.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot exhaustiveDecomposition ;+ (comment "An &%exhaustiveDecomposition of a &%Class C is a set of subclasses of C such that every subclass of C either is an element of the set or is a subclass of an element of the set. Note: this does not necessarily mean that the elements of the set are disjoint (see &%partition - a &%partition is a disjoint exhaustive decomposition.)") (type INSTANCE) ;+ (allowed-classes Class) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot subList ;+ (comment "(&%subList ?LIST1 ?LIST2) means that ?LIST1 is a sublist of ?LIST2, i.e. every element of ?LIST1 is an element of ?LIST2 and the elements that are common to both &%Lists have the same order in both &%Lists.") (type INSTANCE) ;+ (allowed-classes List) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot identityElement ;+ (comment "An object ?ID is the identity element for BinaryFunction ?FUNCTION just in case, for every instance ?INST, applying ?FUNCTION to ?INST and ?ID results in ?INST.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot ListConcatenateFn ;+ (comment "A &%Function that returns the concatenation of the two &%Lists that are given as arguments. For example, the value of (&%ListConcatenateFn (&%ListFn &%Monday &%Tuesday) (&%ListFn &%Wednesday &%Thursday)) would be (&%ListFn &%Monday &%Tuesday &%Wednesday &%Thursday).") (type INSTANCE) ;+ (allowed-classes List) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot partition ;+ (comment "A &%partition of a class C is a set of \nmutually &%disjoint classes (a subclass partition) which covers C. \nEvery instance of C is an instance of exactly one of the subclasses \nin the partition.") (type INSTANCE) ;+ (allowed-classes Class) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot partialOrderingOn ;+ (comment "A &%BinaryRelation is a partial ordering on a &%SetOrClass only if the relation is &%reflexiveOn the &%SetOrClass, and it is both an &%AntisymmetricRelation, and a &%TransitiveRelation.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MinFn ;+ (comment "(&%MinFn ?NUMBER1 ?NUMBER2) is the smallest of ?NUMBER1 and ?NUMBER2. In cases where ?NUMBER1 is equal to ?NUMBER2, &%MinFn returns one of its arguments.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot HourFn ;+ (comment "A &%BinaryFunction that assigns a &%PositiveRealNumber and a subclass of &%Days to the &%Hours within each &%Day corresponding to that &%PositiveRealNumber. For example, (&%HourFn 12 &%Thursday) is the &%Class of all instances of noon Thursday. For another example, (&%HourFn 24 &%Day) would return the class of all instances of midnight. For still another example, (&%HourFn 14 (&%DayFn 18 (&%MonthFn 8 (YearFn 1912)))) denotes 2 PM on the 18th day of August 1912.") (type INSTANCE) ;+ (allowed-classes Day) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot uses ;+ (comment "(&%uses ?OBJECT AGENT) means that ?OBJECT is used by ?AGENT as an instrument in an unspecified &%Process. This &%Predicate, as its corresponding axiom indicates, is a composition of the &%CaseRoles &%agent and &%instrument.") (type INSTANCE) ;+ (allowed-classes Agent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot independentProbability ;+ (comment "One of the basic &%ProbabilityRelations. (&%independentProbability ?FORMULA1 ?FORMULA2) means that the probabilities of ?FORMULA1 and ?FORMULA2 being true are independent.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot ExponentiationFn ;+ (comment "(&%ExponentiationFn ?NUMBER ?INT) returns the &%RealNumber ?NUMBER raised to the power of the &%Integer ?INT.") (type INSTANCE) ;+ (allowed-classes Integer) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot employs ;+ (comment "(&%employs ?ORG ?PERSON) means that ?ORG has hired ?PERSON and currently retains ?PERSON, on a salaried or contractual basis, to provide services in exchange for monetary compensation.") (type INSTANCE) ;+ (allowed-classes CognitiveAgent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot ProbabilityFn (type INSTANCE) ;+ (allowed-classes RealNumber) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot ImmediateFutureFn ;+ (comment "A &%UnaryFunction that maps a &%TimePosition to a short, indeterminate &%TimeInterval that immediately follows the &%TimePosition.") (type INSTANCE) ;+ (allowed-classes TimeInterval) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot refers ;+ (comment "(&%refers ?OBJ1 ?OBJ2) means that ?OBJ1 mentions or includes a reference to ?OBJ2. Note that &%refers is more general in meaning than &%represents, because presumably something can represent something else only if it refers to this other thing. For example, an article whose topic is a recent change in the price of oil may refer to many other things, e.g. the general state of the economy, the weather in California, the prospect of global warming, the options for alternative energy sources, the stock prices of various oil companies, etc.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot representsInLanguage ;+ (comment "A very general predicate. (&%representsInLanguage ?THING ?ENTITY ?LANGUAGE) means that the &%instance of &%Physical ?THING stands for ?ENTITY in the language ?LANGUAGE.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MicroFn ;+ (comment "A &%UnaryFunction that maps a &%UnitOfMeasure into a &%UnitOfMeasure that is equal to .000001 units of the original &%UnitOfMeasure. For example, (&%MicroFn &%Meter) is .000001 &%Meters.") (type INSTANCE) ;+ (allowed-classes UnitOfMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot monetaryValue ;+ (comment "A &%BinaryPredicate that associates an &%Object with its value expressed as an instance of &%CurrencyMeasure.") (type INSTANCE) ;+ (allowed-classes CurrencyMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot PerFn ;+ (comment "&%PerFn maps two instances of &%ConstantQuantity to the &%FunctionQuantity composed of these two instances. For example, (&%PerFn (&%MeasureFn 2 (&%MicroFn &%Gram)) (&%MeasureFn 1 (&%KiloFn &%Gram))) denotes the &%FunctionQuantity of 2 micrograms per kiogram. This function is useful, because it allows the knowledge engineer to dynamically generate instances of &%FunctionQuantity.") (type INSTANCE) ;+ (allowed-classes ConstantQuantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot agent ;+ (comment "(&%agent ?PROCESS ?AGENT) means that ?AGENT is an active determinant, either animate or inanimate, of the &%Process ?PROCESS, with or without voluntary intention. For example, water is the &%agent of erosion in the following proposition: the water eroded the coastline. For another example, Eve is an &%agent in the following proposition: Eve bit an apple.") (type INSTANCE) ;+ (allowed-classes Agent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot citizen ;+ (comment "(&%citizen ?PERSON ?NATION) means that the &%Human ?PERSON is a citizen of &%Nation ?NATION.") (type INSTANCE) ;+ (allowed-classes Nation) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot time ;+ (comment "This relation holds between an instance of &%Physical and an instance of &%TimePosition just in case the temporal lifespan of the former includes the latter. The constants &%located and &%time are the basic spatial and temporal predicates, respectively.") (type INSTANCE) ;+ (allowed-classes TimePosition) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot containsInformation ;+ (comment "A subrelation of &%represents. This predicate relates a &%ContentBearingObject to the &%Proposition that is expressed by the &%ContentBearingObject. Examples include the relationships between a physical novel and its story and between a printed score and its musical content.") (type INSTANCE) ;+ (allowed-classes Proposition) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot UnionFn ;+ (comment "A &%BinaryFunction that maps two &%SetOrClasses to the union of these &%SetOrClasses. An object is an &%element of the union of two &%SetOrClasses just in case it is an &%instance of either &%SetOrClass.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot ListLengthFn ;+ (comment "A &%Function that takes a &%List as its sole argument and returns the number of items in the &%List. For example, (&%ListLengthFn (&%ListFn &%Monday &%Tuesday &%Wednesday)) would return the value 3.") (type INSTANCE) ;+ (allowed-classes NonnegativeInteger) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot desires ;+ (comment "(&%desires ?AGENT ?FORMULA) means that ?AGENT wants to bring about the state of affairs expressed by ?FORMULA. Note that there is no implication that what is desired by the agent is not already true. Note too that &%desires is distinguished from &%wants only in that the former is a &%PropositionalAttitude, while &%wants is an &%ObjectAttitude.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot developmentalForm ;+ (comment "(&%developmentalForm ?OBJECT ?FORM) means that ?FORM is an earlier stage in the individual maturation of ?OBJECT. For example, tadpole and caterpillar are &%developmentalForms of frogs and butterflies, respectively.") (type INSTANCE) ;+ (allowed-classes DevelopmentalAttribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot range ;+ (comment "Gives the range of a function. In other words, (&%range ?FUNCTION ?CLASS) means that all of the values assigned by ?FUNCTION are &%instances of ?CLASS.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot traverses ;+ (comment "(&%traverses ?OBJ1 ?OBJ2) means that ?OBJ1 crosses or extends across ?OBJ2. Note that &%crosses and &%penetrates are subrelations of &%traverses.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MinuteFn ;+ (comment "A &%BinaryFunction that assigns a &%PositiveRealNumber and a subclass of &%Hours to the &%Minutes within each &%Hour corresponding to that &%PositiveRealNumber. For example, (&%MinuteFn 30 (&%HourFn 17 &%Day)) is the &%Class of all 5:30's in the afternoon. For another example, (&%MinuteFn 15 &%Hour) would return the class of all instances of quarter past the hour. For still another example, (&%MinuteFn 15 (&%HourFn 14 (&%DayFn 18 (&%MonthFn 8 (YearFn 1912))))) denotes 15 minutes after 2 PM on the 18th day of August 1912.") (type INSTANCE) ;+ (allowed-classes Hour) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot CardinalityFn ;+ (comment "(CardinalityFn ?CLASS) returns the number of instances in the &%SetOrClass or &%Collection ?CLASS.") (type INSTANCE) ;+ (allowed-classes Number) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot modalAttribute ;+ (comment "A &%BinaryRelation that is used to state the normative force of a &%Proposition. (&%modalAttribute ?FORMULA ?PROP) means that the &%Proposition expressed by ?FORMULA has the &%NormativeAttribute ?PROP. For example, (&%modalAttribute (&%exists (?ACT ?OBJ) (&%and (&%instance ?ACT &%Giving) (&%agent ?ACT John) (&%patient ?ACT ?OBJ) (&%destination ?ACT Tom))) &%Obligation) means that John is obligated to give Tom something.") (type INSTANCE) ;+ (allowed-classes NormativeAttribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot fills ;+ (comment "Holes can be filled. (&%fills ?OBJ ?HOLE) means that the &%Object ?OBJ fills the &%Hole ?HOLE. Note that &%fills here means perfectly filled.") (type INSTANCE) ;+ (allowed-classes Hole) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot increasesLikelihood ;+ (comment "One of the basic &%ProbabilityRelations. (&%increasesLikelihood ?FORMULA1 ?FORMULA2) means that ?FORMULA2 is more likely to be true if ?FORMULA1 is true.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot WhenFn ;+ (comment "A &%UnaryFunction that maps an &%Object or &%Process to the exact &%TimeInterval during which it exists. Note that, for every &%TimePoint ?TIME outside of the &%TimeInterval (WhenFn ?THING), (time ?THING ?TIME) does not hold.") (type INSTANCE) ;+ (allowed-classes TimeInterval) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot expressedInLanguage ;+ (comment "(&%expressedInLanguage ?EXPRESS ?LANG) means that ?EXPRESS is expressed in &%Language ?LANG.") (type INSTANCE) ;+ (allowed-classes Language) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot KappaFn ;+ (comment "A class-forming operator that takes two arguments: a variable and a formula containing at least one unbound occurrence of the variable. The result of applying &%KappaFn to a variable and a formula is the &%SetOrClass of things that satisfy the formula. For example, we can denote the &%SetOrClass of prime numbers that are less than 100 with the following expression: (KappaFn ?NUMBER (and (instance ?NUMBER PrimeNumber) (lessThan ?NUMBER 100))). Note that the use of this function is discouraged, since there is currently no axiomatic support for it.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot BeginFn ;+ (comment "A &%UnaryFunction that maps a &%TimeInterval to the &%TimePoint at which the interval begins.") (type INSTANCE) ;+ (allowed-classes TimePoint) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot inhabits ;+ (comment "A very basic notion of living within something else. (&%inhabits ?ORGANISM ?OBJECT) means that ?OBJECT is the residence, nest, home, etc. of ?ORGANISM.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot IntegerSquareRootFn ;+ (comment "(&%IntegerSquareRootFn ?NUMBER) returns the integer square root of ?NUMBER.") (type INSTANCE) ;+ (allowed-classes NonnegativeInteger) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot ImaginaryPartFn ;+ (comment "(&%ImaginaryPartFn ?NUMBER) returns the part of ?NUMBER that has the square root of -1 as its factor.") (type INSTANCE) ;+ (allowed-classes ImaginaryNumber) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot distributes ;+ (comment "A &%BinaryFunction ?FUNCTION1 is distributive over another &%BinaryFunction ?FUNCTION2 just in case (?FUNCTION1 ?INST1 (?FUNCTION2 ?INST2 ?INST3)) is equal to (?FUNCTION2 (?FUNCTION1 ?INST1 ?INST2) (?FUNCTION1 ?INST1 ?INST3)), for all ?INST1, ?INST2, and ?INST3.") (type INSTANCE) ;+ (allowed-classes BinaryFunction) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot attribute ;+ (comment "(&%attribute ?OBJECT ?PROPERTY) means that ?PROPERTY is a &%Attribute of ?OBJECT. For example, (&%attribute &%MyLittleRedWagon &%Red).") (type INSTANCE) ;+ (allowed-classes Attribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot engineeringSubcomponent ;+ (comment "(&%engineeringSubcomponent ?SUB ?SUPER) means that the &%EngineeringComponent ?SUB is structurally a &%properPart ?SUPER. This relation is an &%AsymmetricRelation, since two &%EngineeringComponents cannot be subcomponents of each other.") (type INSTANCE) ;+ (allowed-classes EngineeringComponent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MereologicalDifferenceFn ;+ (comment "(&%MereologicalDifferenceFn ?OBJ1 ?OBJ2) denotes the &%Object consisting of the parts which belong to ?OBJ1 and not to ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot AssignmentFn ;+ (comment "If F is a function with a value for the objects denoted by N1,..., NK, then the term (AssignmentFn F N1 ... NK) denotes the value of applying F to the objects denoted by N1,..., NK. Otherwise, the value is undefined.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot confersRight ;+ (comment "Expresses the relationship between a &%Formula, an &%Entity, and a &%CognitiveAgent when the &%Entity authorizes the &%CognitiveAgent to bring it about that the &%Formula is true.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot between ;+ (comment "(between ?OBJ1 ?OBJ2 ?OBJ3) means that ?OBJ2 is spatially located between ?OBJ1 and ?OBJ3. Note that this implies that ?OBJ2 is directly between ?OBJ1 and ?OBJ3, i.e. the projections of ?OBJ1 and ?OBJ3 overlap with ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot DayFn ;+ (comment "A &%BinaryFunction that assigns a &%PositiveRealNumber and a subclass of &%Months to the &%Days within each &%Month corresponding to that &%PositiveRealNumber. For example, (&%DayFn 16 &%August) is the &%Class of all sixteenth days of August. For another example, (&%DayFn 9 &%Month) would return the class of all ninth days of any month. For still another example, (&%DayFn 18 (&%MonthFn 8 (YearFn 1912))) denotes the 18th day of August 1912.") (type INSTANCE) ;+ (allowed-classes Month) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot frequency ;+ (comment "(frequency ?PROC ?TIME) means that the &%Process type of ?PROC recurs after every interval of ?TIME.") (type INSTANCE) ;+ (allowed-classes TimeDuration) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot GigaFn ;+ (comment "A &%UnaryFunction that maps a &%UnitOfMeasure into a &%UnitOfMeasure that is equal to 1,000,000,000 units of the original &%UnitOfMeasure. For example, (&%GigaFn &%Hertz) is 1,000,000,000 &%Hertz.") (type INSTANCE) ;+ (allowed-classes UnitOfMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot subclass ;+ (comment "(&%subclass ?CLASS1 ?CLASS2) means that ?CLASS1 is a subclass of ?CLASS2, i.e. every instance of ?CLASS1 is also an instance of ?CLASS2. A class may have multiple superclasses and subclasses.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot connects ;+ (comment "The relationship between three things, when one of the three things connects the other two. More formally, (&%connects ?OBJ1 ?OBJ2 ?OBJ3) means that (&%connected ?OBJ1 ?OBJ2) and (&%connected ?OBJ1 ?OBJ3) and not (&%connected ?OBJ2 ?OBJ3).") (type INSTANCE) ;+ (allowed-classes SelfConnectedObject) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot distance ;+ (comment "(&%distance ?OBJ1 ?OBJ2 ?QUANT) means that the shortest distance between the two objects ?OBJ1 and ?OBJ2 is ?QUANT. Note that the difference between the predicates &%length and &%distance is that the &%length is used to state the &%LengthMeasure of one of the dimensions of a single object, while &%distance is used to state the &%LengthMeasure that separates two distinct objects.") (type INSTANCE) ;+ (allowed-classes Physical) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot arcWeight ;+ (comment "This predicate indicates the value of a &%GraphArc in a &%Graph. This could map to the length of a road in a road network or the flow rate of a pipe in a plumbing system.") (type INSTANCE) ;+ (allowed-classes RealNumber) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot surface ;+ (comment "(&%surface ?OBJ1 ?OBJ2) means that ?OBJ1 is a maximally connected &%superficialPart of ?OBJ2. Note that some &%SelfConnectedObjects have more than one surface, e.g. a hollow object like a tennis ball has both an inner and an outer surface.") (type INSTANCE) ;+ (allowed-classes SelfConnectedObject) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot TeraFn ;+ (comment "A &%UnaryFunction that maps a &%UnitOfMeasure into a &%UnitOfMeasure that is equal to 1,000,000,000,000 units of the original &%UnitOfMeasure. For example, (&%TeraFn &%Hertz) is 1,000,000,000,000 &%Hertz.") (type INSTANCE) ;+ (allowed-classes UnitOfMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MeasureFn ;+ (comment "This &%BinaryFunction maps a &%RealNumber and a &%UnitOfMeasure to that &%Number of units. It is used for expressing &%ConstantQuantities. For example, the concept of three meters is represented as (&%MeasureFn 3 &%Meter).") (type INSTANCE) ;+ (allowed-classes UnitOfMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot ImmediatePastFn ;+ (comment "A &%UnaryFunction that maps a &%TimePosition to a short, indeterminate &%TimeInterval that immediately precedes the &%TimePosition.") (type INSTANCE) ;+ (allowed-classes TimeInterval) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot CutSetFn ;+ (comment "A &%UnaryFunction that assigns a &%Graph the &%Class of &%GraphPaths that partition the graph into two separate graphs if cut. There may be more than one cutset for a given graph.") (type INSTANCE) ;+ (allowed-classes GraphPath) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot faces ;+ (comment "(&%faces ?OBJ ?DIRECTION) means that the front of ?OBJ (see &%FrontFn) is positioned towards the compass direction ?DIRECTION. More precisely, it means that if a line were extended from the center of ?DIRECTION, the line would intersect with the front of ?OBJ before it intersected with its back (see &%BackFn).") (type INSTANCE) ;+ (allowed-classes DirectionalAttribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot TerminalNodeFn ;+ (comment "A &%UnaryFunction that maps a &%GraphArc to the terminal node of the &%GraphArc. Note that this is a partial function. In particular, the function is undefined for &%GraphArcs that are not part of a &%DirectedGraph.") (type INSTANCE) ;+ (allowed-classes GraphNode) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot SineFn ;+ (comment "(&%SineFn ?DEGREE) is the sine of the &%PlaneAngleMeasure ?DEGREE. The sine of ?DEGREE is the ratio of the side opposite ?DEGREE to the hypotenuse in a right-angled triangle.") (type INSTANCE) ;+ (allowed-classes RealNumber) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot RelativeComplementFn ;+ (comment "A &%BinaryFunction that maps two &%SetOrClasses to the difference between these &%SetOrClasses. More precisely, the relative complement of one class C1 relative to another C2 consists of the instances of C1 that are instances of the &%ComplementFn of C2.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MaxFn ;+ (comment "(&%MaxFn ?NUMBER1 ?NUMBER2) is the largest of ?NUMBER1 and ?NUMBER2. In cases where ?NUMBER1 is equal to ?NUMBER2, &%MaxFn returns one of its arguments.") (type INSTANCE) ;+ (allowed-classes Quantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot documentation ;+ (comment "A relation between objects in the domain of discourse and strings of natural language text. The domain of &%documentation is not constants (names), but the objects themselves. This means that one does not quote the names when associating them with their documentation.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot irreflexiveOn ;+ (comment "A &%BinaryRelation is irreflexive on a &%SetOrClass only if no instance of the &%SetOrClass bears the relation to itself.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot representsForAgent ;+ (comment "A very general predicate. (&%representsForAgent ?THING ?ENTITY ?AGENT) means that the ?AGENT chooses to use the &%instance of &%Physical ?THING to 'stand for' ?ENTITY.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot FutureFn ;+ (comment "A &%UnaryFunction that maps a &%TimePosition to the &%TimeInterval which it meets and which ends at &%PositiveInfinity.") (type INSTANCE) ;+ (allowed-classes TimeInterval) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot reflexiveOn ;+ (comment "A &%BinaryRelation is reflexive on a &%SetOrClass only if every instance of the &%SetOrClass bears the relation to itself.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot equal ;+ (comment "(equal ?ENTITY1 ?ENTITY2) is true just in case ?ENTITY1 is identical with ?ENTITY2.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot entails ;+ (comment "The operator of logical entailment. (&%entails ?FORMULA1 ?FORMULA2) means that ?FORMULA2 can be derived from ?FORMULA1 by means of the proof theory of SUO-KIF.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot overlapsTemporally ;+ (comment "(&%overlapsTemporally ?INTERVAL1 ?INTERVAL2) means that the &%TimeIntervals ?INTERVAL1 and ?INTERVAL2 have a &%TimeInterval as a common part.") (type INSTANCE) ;+ (allowed-classes TimeInterval) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot RealNumberFn ;+ (comment "(RealNumberFn ?NUMBER) returns the part of ?NUMBER that is a &%RealNumber.") (type INSTANCE) ;+ (allowed-classes RealNumber) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot totalOrderingOn ;+ (comment "A &%BinaryRelation ?REL is a total ordering on a &%SetOrClass only if it is a partial ordering for which either (?REL ?INST1 ?INST2) or (?REL ?INST2 ?INST1) for every ?INST1 and ?INST2 in the &%SetOrClass.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot NanoFn ;+ (comment "A &%UnaryFunction that maps a &%UnitOfMeasure into a &%UnitOfMeasure that is equal to .000000001 units of the original &%UnitOfMeasure. For example, (&%MicroFn &%SecondDuration) is .000000001 &%SecondDurations.") (type INSTANCE) ;+ (allowed-classes UnitOfMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot hasSkill ;+ (comment "Similar to the &%capability &%Predicate with the additional restriction that the ability be practised/demonstrated to some measurable degree.") (type INSTANCE) ;+ (allowed-classes Agent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot holdsDuring ;+ (comment "(&%holdsDuring ?TIME ?FORMULA) means that the proposition denoted by ?FORMULA is true in the time frame ?TIME. Note that this implies that ?FORMULA is true at every &%TimePoint which is a &%temporalPart of ?TIME.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot experiencer ;+ (comment "(&%experiencer ?PROCESS ?AGENT) means that ?AGENT experiences the &%Process ?PROCESS. For example, Yojo is the &%experiencer of seeing in the following proposition: Yojo sees the fish. Note that &%experiencer, unlike &%agent, does not entail a causal relation between its arguments.") (type INSTANCE) ;+ (allowed-classes Agent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot meetsTemporally ;+ (comment "(&%meetsTemporally ?INTERVAL1 ?INTERVAL2) means that the terminal point of the &%TimeInterval ?INTERVAL1 is the initial point of the &%TimeInterval ?INTERVAL2.") (type INSTANCE) ;+ (allowed-classes TimeInterval) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot SquareRootFn ;+ (comment "(SquareRootFn ?NUMBER) is the principal square root of ?NUMBER.") (type INSTANCE) ;+ (allowed-classes Number) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot sibling ;+ (comment "The relationship between two &%Organisms that have the same &%mother and &%father. Note that this relationship does not hold between half-brothers, half-sisters, etc.") (type INSTANCE) ;+ (allowed-classes Organism) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot subsumesContentInstance ;+ (comment "A &%BinaryPredicate relating two instances of &%ContentBearingObject. (&%subsumesContentInstance ?OBJ1 ?OBJ2) means that the content expressed by ?OBJ2 is part of the content expressed by ?OBJ1. An example is the relationship between a handwritten poem and one of its stanzas. Note that this is a relation between instances, rather than &%Classes. If one wants to assert a content relationship between &%Classes, e.g. between the version of an intellectual work and a part of that work, the relation &%subsumesContentClass should be used.") (type INSTANCE) ;+ (allowed-classes ContentBearingObject) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot domain ;+ (comment "Provides a computationally and heuristicallyconvenient mechanism for declaring the argument types of a given relation. The formula (&%domain ?REL ?INT ?CLASS) means that the ?INT'th element of each tuple in the relation ?REL must be an instance of ?CLASS. Specifying argumenttypes is very helpful in maintaining ontologies. Representation systems can use these specifications to classify terms and check integrity constraints. If the restriction on the argument type of a &%Relation is not captured by a &%SetOrClass already defined in the ontology, one can specify a &%SetOrClass compositionally with the functions &%UnionFn, &%IntersectionFn, etc.") (type INSTANCE) ;+ (allowed-classes PositiveInteger) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3AArg3 ;+ (comment "THe third argument of a higher-arity relation") (type SYMBOL) ;+ (allowed-parents Entity) ;+ (cardinality 0 1) ;+ (associated-facet SUMO148_00000) (create-accessor read-write)) (single-slot destination ;+ (comment "(destination ?PROCESS ?GOAL) means that ?GOAL is the target or goal of the Process ?PROCESS. For example, Danbury would be the destination in the following proposition: Bob went to Danbury. Note that this is a very general &%CaseRole and, in particular, that it covers the concepts of 'recipient' and 'beneficiary'. Thus, John would be the &%destination in the following proposition: Tom gave a book to John.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot direction ;+ (comment "(&%direction ?PROC ?ATTR) means that the &%Process ?PROC is moving in the direction ?ATTR. For example, one would use this &%Predicate to represent the fact that Max is moving &%North.") (type INSTANCE) ;+ (allowed-classes DirectionalAttribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot PrincipalHostFn ;+ (comment "A &%UnaryFunction that maps a &%Hole to the &%Object which is its principal host. The principle host of a &%Hole is its maximally connected host (a notion taken here to be defined only when the argument is a hole).") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot forall ;+ (comment "The universal quantifier of predicate logic.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot knows ;+ (comment "The epistemic predicate of knowing. (&%knows ?AGENT ?FORMULA) means that ?AGENT knows the proposition expressed by ?FORMULA. Note that &%knows entails conscious awareness, so this &%Predicate cannot be used to express tacit or subconscious or unconscious knowledge.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot BeginNodeFn ;+ (comment "A &%UnaryFunction that maps a &%GraphPath to the &%GraphNode that is the beginning of the &%GraphPath. Note that, unlike &%InitialNodeFn (which relates a &%GraphArc to a &%GraphNode), &%BeginNodeFn is a total function - every &%GraphPath has a beginning.") (type INSTANCE) ;+ (allowed-classes GraphNode) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot occupiesPosition ;+ (comment "(&%occupiesPosition ?PERSON ?POSITION ?ORG) means that ?PERSON holds the &%Position ?POSITION at &%Organization ?ORG. For example, (&%occupiesPosition &%TomSmith &%ResearchDirector &%AcmeLaboratory) means that &%TomSmith is a research director at Acme Labs.") (type INSTANCE) ;+ (allowed-classes Position) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot familyRelation ;+ (comment "A very general &%Predicate for biological relationships. (&%familyRelation ?ORGANISM1 ?ORGANISM2) means that ?ORGANISM1 and ?ORGANISM2 are biologically derived from a common ancestor.") (type INSTANCE) ;+ (allowed-classes Organism) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot SecondFn ;+ (comment "A &%BinaryFunction that assigns a &%PositiveRealNumber and a subclass of &%Minutes to the &%Seconds within each &%Minute corresponding to that &%PositiveRealNumber. For example, (&%SecondFn 4 (&%MinuteFn 5 &%Hour)) is the &%Class of all fourth &%Seconds of every fifth &%Minute of every hour. For another example, (&%SecondFn 8 &%Minute) would return the eighth second of every minute. For still another example, (&%SecondFn 9 (&%MinuteFn 15 (&%HourFn 14 (&%DayFn 18 (&%MonthFn 8 (YearFn 1912)))))) denotes 9 seconds and 15 minutes after 2 PM on the 18th day of August 1912.") (type INSTANCE) ;+ (allowed-classes Minute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3C%3D%3E ;+ (comment "The truth-functional connective of bi-implication.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MereologicalSumFn ;+ (comment "(&%MereologicalSumFn ?OBJ1 ?OBJ2) denotes the &%Object consisting of the parts which belong to either ?OBJ1 or ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot parent ;+ (comment "The general relationship of parenthood. (&%parent ?CHILD ?PARENT) means that ?PARENT is a biological parent of ?CHILD.") (type INSTANCE) ;+ (allowed-classes Organism) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot subGraph ;+ (comment "The relation between two &%Graphs when one &%Graph is a part of the other. (&%subGraph ?GRAPH1 ?GRAPH2) means that ?GRAPH1 is a part of ?GRAPH2.") (type INSTANCE) ;+ (allowed-classes Graph) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot disjointDecomposition ;+ (comment "A &%disjointDecomposition of a &%Class C is a set of subclasses of C that are mutually &%disjoint.") (type INSTANCE) ;+ (allowed-classes Class) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot not ;+ (comment "The truth-functional connective of negation.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot KiloFn ;+ (comment "A &%UnaryFunction that maps a &%UnitOfMeasure into a &%UnitOfMeasure that is equal to 1,000 units of the original &%UnitOfMeasure. For example, (&%KiloFn &%Gram) is 1,000 &%Grams.") (type INSTANCE) ;+ (allowed-classes UnitOfMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot WealthFn ;+ (comment "A &%UnaryFunction that maps an &%Agent to a &%CurrencyMeasure specifying the value of the property owned by the &%Agent. Note that this &%Function is generally used in conjunction with the &%Function &%PropertyFn, e.g. (&%WealthFn (&%PropertyFn BillGates)) would return the monetary value of the sum of Bill Gates' holdings.") (type INSTANCE) ;+ (allowed-classes CurrencyMeasure) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass TernarySlot "A slot that has three arguments. It is implemented here by adding a slot to this class, Arg3. This slot can only take a fixed class value, and only serves to record the clas restriciton, it canot be used to instantiate the relation. Other workarounds can be used to better represent higher-arity relatrions, but at the expense of greater complexity in viewing the relations." (is-a %3ASTANDARD-SLOT) (role concrete) (single-slot %3AArg3 ;+ (comment "THe third argument of a higher-arity relation") (type SYMBOL) ;+ (allowed-parents Entity) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass QuaternarySlot "A slot that has four arguments. It is implemented here by adding a slot,, Arg4, to the ternarySlot class. This slot can only take a fixed class value, and only serves to record the clas restriciton, it canot be used to instantiate the relation. Other workarounds can be used to better represent higher-arity relatrions, but at the expense of greater complexity in viewing the relations." (is-a TernarySlot) (role concrete) (single-slot %3AArg4 ;+ (comment "The fourth argument of a quaternary or higher-arity slot.") (type SYMBOL) ;+ (allowed-parents) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass Entity "SUO 1.15: September 6, 2001\nAny entity." (is-a USER) (role concrete) (single-slot SUO-name (type STRING) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot property ;+ (comment "This &%Predicate holds between an instance of &%Entity and an instance of &%Attribute. (property ?ENTITY ?ATTR) means that ?ENTITY has the &%Attribute ?ATTR.") (type INSTANCE) ;+ (allowed-classes Attribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot inList ;+ (comment "The analog of &%element and &%instance for &%Lists. (&%inList ?OBJ ?LIST) means that ?OBJ is in the &%List ?LIST. For example, (&%inList &%Tuesday (&%ListFn &%Monday &%Tuesday &%Wednesday)) would be true.") (type INSTANCE) ;+ (allowed-classes List) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot relatedInternalConcept ;+ (comment "Means that the two arguments are related concepts within the SUMO, i.e. there is a significant similarity of meaning between them. To indicate a meaning relation between a SUMO concept and a concept from another source, use the Predicate &%relatedExternalConcept.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot equal ;+ (comment "(equal ?ENTITY1 ?ENTITY2) is true just in case ?ENTITY1 is identical with ?ENTITY2.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot element ;+ (comment "(element ?ENTITY ?SET) is true just in case ?ENTITY is contained in the &%Set ?SET. An &%Entity can be an &%element of another &%Entity only if the latter is a &%Set.") (type INSTANCE) ;+ (allowed-classes Set) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot instance ;+ (comment "An object is an &%instance of a &%SetOrClass if it is included in that &%SetOrClass. An individual may be an instance of many classes, some of which may be subclasses of others. Thus, there is no assumption in the meaning of &%instance about specificity or uniqueness.") (type INSTANCE) ;+ (allowed-classes SetOrClass) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot documentation ;+ (comment "A relation between objects in the domain of discourse and strings of natural language text. The domain of &%documentation is not constants (names), but the objects themselves. This means that one does not quote the names when associating them with their documentation.") (type STRING) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass Physical "SUO 1.15: September 6, 2001\nAn entity that has a location in space-time. Note that locations are themselves understood to have a location in space-time." (is-a Entity) (role concrete) (single-slot date ;+ (comment "A &%BinaryPredicate that specifies a &%TimePosition in absolute calendar time, at the resolution of one day, for a particular &%Object or &%Process.") (type INSTANCE) ;+ (allowed-classes Day) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot hasPurpose ;+ (comment "This &%Predicate expresses the concept of a conventional goal, i.e. a goal with a neutralized agent's intention. Accordingly, (&%hasPurpose ?THING ?FORMULA) means that the instance of &%Physical ?THING has, as its purpose, the &%Proposition expressed by ?FORMULA. Note that there is an important difference in meaning between the &%Predicates &%hasPurpose and &%result. Although the second argument of the latter can satisfy the second argument of the former, a conventional goal is an expected and desired outcome, while a result may be neither expected nor desired. For example, a machine process may have outcomes but no goals, aimless wandering may have an outcome but no goal; a learning process may have goals with no outcomes, and so on.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot WhenFn ;+ (comment "A &%UnaryFunction that maps an &%Object or &%Process to the exact &%TimeInterval during which it exists. Note that, for every &%TimePoint ?TIME outside of the &%TimeInterval (WhenFn ?THING), (time ?THING ?TIME) does not hold.") (type INSTANCE) ;+ (allowed-classes TimeInterval) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot located ;+ (comment "A very general predicate. (&%located ?PHYS ?OBJ) means that ?PHYS is situated at ?OBJ, in some sense. The &%Predicates &%located and &%time are spatial and temporal predicates, respectively.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot time ;+ (comment "This relation holds between an instance of &%Physical and an instance of &%TimePosition just in case the temporal lifespan of the former includes the latter. The constants &%located and &%time are the basic spatial and temporal predicates, respectively.") (type INSTANCE) ;+ (allowed-classes TimePosition) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot WhereFn ;+ (comment "Maps an &%Object and a &%TimePoint at which the &%Object exists to the &%Region where the &%Object existed at that &%TimePoint.") (type INSTANCE) ;+ (allowed-classes TimePoint) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot representsForAgent ;+ (comment "A very general predicate. (&%representsForAgent ?THING ?ENTITY ?AGENT) means that the ?AGENT chooses to use the &%instance of &%Physical ?THING to 'stand for' ?ENTITY.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot cooccur ;+ (comment "(&%cooccur ?THING1 ?THING2) means that the &%Object or &%Process ?THING1 occurs at the same time as, together with, or jointly with the &%Object or &%Process ?THING2. This covers the following temporal relations: is co-incident with, is concurrent with, is contemporaneous with, and is concomitant with.") (type INSTANCE) ;+ (allowed-classes Physical) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot hasPurposeForAgent ;+ (comment "Expresses a cognitive attitude of an agent with respect to a particular instance of Physical. More precisely, (&%hasPurposeForAgent ?THING ?FORMULA ?AGENT) means that the purpose of ?THING for ?AGENT is the proposition expressed by ?FORMULA. Very complex issues are involved here. In particular, the rules of inference of the first order predicate calculus are not truth-preserving for the second argument position of this &%Predicate.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot distance ;+ (comment "(&%distance ?OBJ1 ?OBJ2 ?QUANT) means that the shortest distance between the two objects ?OBJ1 and ?OBJ2 is ?QUANT. Note that the difference between the predicates &%length and &%distance is that the &%length is used to state the &%LengthMeasure of one of the dimensions of a single object, while &%distance is used to state the &%LengthMeasure that separates two distinct objects.") (type INSTANCE) ;+ (allowed-classes Physical) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot refers ;+ (comment "(&%refers ?OBJ1 ?OBJ2) means that ?OBJ1 mentions or includes a reference to ?OBJ2. Note that &%refers is more general in meaning than &%represents, because presumably something can represent something else only if it refers to this other thing. For example, an article whose topic is a recent change in the price of oil may refer to many other things, e.g. the general state of the economy, the weather in California, the prospect of global warming, the options for alternative energy sources, the stock prices of various oil companies, etc.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot representsInLanguage ;+ (comment "A very general predicate. (&%representsInLanguage ?THING ?ENTITY ?LANGUAGE) means that the &%instance of &%Physical ?THING stands for ?ENTITY in the language ?LANGUAGE.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass Object "SUO 1.15: September 6, 2001\nCorresponds roughly to the class of ordinary objects. Examples include normal physical objects, geographical regions, and locations of &%Processes, the complement of &%Objects in the &%Physical class. In a 4D ontology, an &%Object is something whose spatiotemporal extent is thought of as dividing into spatial parts roughly parallel to the time-axis." (is-a Physical) (role concrete) (single-slot connected ;+ (comment "(connected ?OBJ1 ?OBJ2) means that ?OBJ1 &%meetsSpatially ?OBJ2 or that ?OBJ1 &%overlapsSpatially ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot length ;+ (comment "&%BinaryPredicate that is used to state the measure of an &%Object from one point to another point along its surface. Note that the difference between the predicates &%length and &%distance is that the &%length is used to state the &%LengthMeasure of one of the dimensions of a single object, while &%distance is used to state the &%LengthMeasure that separates two distinct objects.") (type INSTANCE) ;+ (allowed-classes LengthMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot copy ;+ (comment "relates an &%Object to an exact copy of the &%Object, where an exact copy is indistinguishable from the original with regard to every property except (possibly) spatial and/or temporal location.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot monetaryValue ;+ (comment "A &%BinaryPredicate that associates an &%Object with its value expressed as an instance of &%CurrencyMeasure.") (type INSTANCE) ;+ (allowed-classes CurrencyMeasure) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot between ;+ (comment "(between ?OBJ1 ?OBJ2 ?OBJ3) means that ?OBJ2 is spatially located between ?OBJ1 and ?OBJ3. Note that this implies that ?OBJ2 is directly between ?OBJ1 and ?OBJ3, i.e. the projections of ?OBJ1 and ?OBJ3 overlap with ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot age ;+ (comment "Simply relates an &%Object to a &%ConstantQuantity specifying the age of the &%Object.") (type INSTANCE) ;+ (allowed-classes TimeDuration) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot properlyFills ;+ (comment "(&%properlyFills ?OBJ ?HOLE) means that ?HOLE is properly (though perhaps incompletely) filled by ?OBJ, i.e. some part of ?HOLE is perfectly filled by ?OBJ. Note that &%properlyFills is the dual of &%completelyFills, and is so related to &%partiallyFills that ?OBJ &%properlyFills ?HOLE just in case ?OBJ &%partiallyFills every part of ?HOLE. (Thus, every perfect filler is both complete and proper in this sense).") (type INSTANCE) ;+ (allowed-classes Hole) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot measure ;+ (comment "A very general &%Predicate for asserting that a particular &%Object is measured by a particular &%ConstantQuantity. In general, the second argument of this &%Predicate will be an instance of the &%Function &%MeasureFn.") (type INSTANCE) ;+ (allowed-classes PhysicalQuantity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot traverses ;+ (comment "(&%traverses ?OBJ1 ?OBJ2) means that ?OBJ1 crosses or extends across ?OBJ2. Note that &%crosses and &%penetrates are subrelations of &%traverses.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot smaller ;+ (comment "(&%smaller ?OBJ1 ?OBJ2) simply means that ?OBJ1 is smaller, with respect to all &%LengthMeasures, than ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot fills ;+ (comment "Holes can be filled. (&%fills ?OBJ ?HOLE) means that the &%Object ?OBJ fills the &%Hole ?HOLE. Note that &%fills here means perfectly filled.") (type INSTANCE) ;+ (allowed-classes Hole) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot faces ;+ (comment "(&%faces ?OBJ ?DIRECTION) means that the front of ?OBJ (see &%FrontFn) is positioned towards the compass direction ?DIRECTION. More precisely, it means that if a line were extended from the center of ?DIRECTION, the line would intersect with the front of ?OBJ before it intersected with its back (see &%BackFn).") (type INSTANCE) ;+ (allowed-classes DirectionalAttribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MereologicalProductFn ;+ (comment "(&%MereologicalProductFn ?OBJ1 ?OBJ2) denotes the &%Object consisting of the parts which belong to both ?OBJ1 and ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot uses ;+ (comment "(&%uses ?OBJECT AGENT) means that ?OBJECT is used by ?AGENT as an instrument in an unspecified &%Process. This &%Predicate, as its corresponding axiom indicates, is a composition of the &%CaseRoles &%agent and &%instrument.") (type INSTANCE) ;+ (allowed-classes Agent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot larger ;+ (comment "(&%larger ?OBJ1 ?OBJ2) simply means that ?OBJ1 is larger, with respect to all &%LengthMeasures, than ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MereologicalSumFn ;+ (comment "(&%MereologicalSumFn ?OBJ1 ?OBJ2) denotes the &%Object consisting of the parts which belong to either ?OBJ1 or ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot attribute ;+ (comment "(&%attribute ?OBJECT ?PROPERTY) means that ?PROPERTY is a &%Attribute of ?OBJECT. For example, (&%attribute &%MyLittleRedWagon &%Red).") (type INSTANCE) ;+ (allowed-classes Attribute) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot partlyLocated ;+ (comment "The predicate of partial localization. For example, Istanbul is partly located in Asia. Note that this is the most basic localization relation: &%located and &%exactlyLocated are both subrelations of &%partlyLocated.") (type INSTANCE) ;+ (allowed-classes Region) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot MereologicalDifferenceFn ;+ (comment "(&%MereologicalDifferenceFn ?OBJ1 ?OBJ2) denotes the &%Object consisting of the parts which belong to ?OBJ1 and not to ?OBJ2.") (type INSTANCE) ;+ (allowed-classes Object) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass SelfConnectedObject "SUO 1.15: September 6, 2001\nA &%SelfConnectedObject is any &%Object that does not consist of two or more disconnected parts." (is-a Object) (role concrete) (single-slot FrontFn (type INSTANCE) ;+ (allowed-classes SelfConnectedObject) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot connects ;+ (comment "The relationship between three things, when one of the three things connects the other two. More formally, (&%connects ?OBJ1 ?OBJ2 ?OBJ3) means that (&%connected ?OBJ1 ?OBJ2) and (&%connected ?OBJ1 ?OBJ3) and not (&%connected ?OBJ2 ?OBJ3).") (type INSTANCE) ;+ (allowed-classes SelfConnectedObject) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot BackFn ;+ (comment "A &%Function that maps an &%Object to the side that is opposite the &%FrontFn of the &%Object. Note that this is a partial function, since some &%Objects do not have sides, e.g. apples and spheres. Note too that the &%range of this &%Function is indefinite in much the way that &%ImmediateFutureFn and &%ImmediatePastFn are indefinite. Although this indefiniteness is undesirable from a theoretical standpoint, it does not have significant practical implications, since there is widespread intersubjective agreement about the most common cases.") (type INSTANCE) ;+ (allowed-classes SelfConnectedObject) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot surface ;+ (comment "(&%surface ?OBJ1 ?OBJ2) means that ?OBJ1 is a maximally connected &%superficialPart of ?OBJ2. Note that some &%SelfConnectedObjects have more than one surface, e.g. a hollow object like a tennis ball has both an inner and an outer surface.") (type INSTANCE) ;+ (allowed-classes SelfConnectedObject) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass Substance "SUO 1.15: September 6, 2001\nAn &%Object in which every part is similar to every other in every relevant respect. More precisely, something is a &%Substance when it has only arbitrary pieces as parts - any parts have properties which are similar to those of the whole. Note that a &%Substance may nonetheless have physical properties that vary. For example, the temperature, chemical constitution, density, etc. may change from one part to another. An example would be a body of water." (is-a SelfConnectedObject) (role concrete) (single-slot material ;+ (comment "(&%material ?SUBSTANCE ?OBJECT) means that ?OBJECT is structurally made up in part of ?SUBSTANCE. This relation encompasses the concepts of 'composed of', 'made of', and 'formed of'. For example, plastic is a &%material of my computer monitor. Compare &%part and its subrelations, viz &%component and &%piece.") (type INSTANCE) ;+ (allowed-classes CorpuscularObject) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass PureSubstance "SUO 1.15: September 6, 2001\nThe &%Class of &%Substances with constant composition. A &%PureSubstance can be either an element (&%ElementalSubstance) or a compound of elements (&%CompoundSubstance). Examples: Table salt (sodium chloride, NaCl), sugar (sucrose, C_{12}H_{22}O_{11}), water (H_2O), iron (Fe), copper (Cu), and oxygen (O_2)." (is-a Substance) (role concrete)) (defclass ElementalSubstance "SUO 1.15: September 6, 2001\nThe &%Class of &%PureSubstances that cannot be separated into two or more &%Substances by ordinary chemical (or physical) means. This excludes nuclear reactions. &%ElementalSubstances are composed of only one kind of atom. Examples: Iron (Fe), copper (Cu), and oxygen (O_2). &%ElementalSubstances are the simplest &%PureSubstances." (is-a PureSubstance) (role concrete)) (defclass Metal "SUO 1.15: September 6, 2001\nA &%Metal is an &%ElementalSubstance that conducts heat and electricity, is shiny and reflects many colors of light, and can be hammered into sheets or drawn into wire. About 80% of the known chemical elements (&%ElementalSubstances) are metals." (is-a ElementalSubstance) (role concrete)) (defclass Atom "SUO 1.15: September 6, 2001\nAn extremely small unit of matter that retains its identity in Chemical reactions. It consists of an &%AtomicNucleus and &%Electrons surrounding the &%AtomicNucleus." (is-a ElementalSubstance) (role concrete)) (defclass SubatomicParticle "SUO 1.15: September 6, 2001\nThe class of &%ElementalSubstances that are smaller than &%Atoms and compose &%Atoms." (is-a ElementalSubstance) (role concrete)) (defclass AtomicNucleus "SUO 1.15: September 6, 2001\nThe core of the &%Atom. It is composed of &%Protons and &%Neutrons." (is-a SubatomicParticle) (role concrete)) (defclass Electron "SUO 1.15: September 6, 2001\n&%SubatomicParticles that surround the &%AtomicNucleus. They have a negative charge." (is-a SubatomicParticle) (role concrete)) (defclass Proton "SUO 1.15: September 6, 2001\nComponents of the &%AtomicNucleus. They have a positive charge." (is-a SubatomicParticle) (role concrete)) (defclass Neutron "SUO 1.15: September 6, 2001\nComponents of the &%AtomicNucleus. They have no charge." (is-a SubatomicParticle) (role concrete)) (defclass CompoundSubstance "SUO 1.15: September 6, 2001\nThe &%Class of &%Substances that contain two or more elements (&%ElementalSubstances), in definite proportion by weight. The composition of a pure compound will be invariant, regardless of the method of preparation. Compounds are composed of more than one kind of atom (element). The term molecule is often used for the smallest unit of a compound that still retains all of the properties of the compound. Examples: Table salt (sodium chloride, NaCl), sugar (sucrose, C_{12}H_{22}O_{11}), and water (H_2O). " (is-a PureSubstance) (role concrete)) (defclass Water "SUO 1.15: September 6, 2001\nThe &%Class of samples of the compound H20. Note that this &%Class covers both pure and impure &%Water." (is-a CompoundSubstance) (role concrete)) (defclass Molecule "SUO 1.15: September 6, 2001\nA molecule is the smallest unit of matter of a &%CompoundSubstance that retains all the physical and chemical properties of that substance, e.g., Ne, H2, H2O. A molecule is two or more &%Atoms linked by a chemical bond." (is-a CompoundSubstance) (role concrete)) (defclass Mixture "SUO 1.15: September 6, 2001\nA &%Mixture is two or more &%PureSubstances, combined in varying proportions - each retaining its own specific properties. The components of a &%Mixture can be separated by physical means, i.e. without the making and breaking of chemical bonds. Examples: Air, table salt thoroughly dissolved in water, milk, wood, and concrete. " (is-a Substance) (role concrete)) (defclass Solution "SUO 1.15: September 6, 2001\nA liquid mixture. The most abundant component in a solution is called the solvent. Other components are called solutes. A solution, though homogeneous, may nonetheless have variable composition. Any amount of salt, up to a maximum limit, can be dissolved in a given amount of water." (is-a Mixture) (role concrete)) (defclass Mineral "SUO 1.15: September 6, 2001\n Any of various naturally occurring homogeneous substances (such as stone, coal, salt, sulfur, sand, petroleum), or synthetic substances having the chemical composition and crystalline form and properties of a naturally occurring mineral." (is-a Mixture) (role concrete)) (defclass BodySubstance "SUO 1.15: September 6, 2001\nExtracellular material and mixtures of cells and extracellular material that are produced, excreted or accreted by an &%Organism. Included here are &%Substances such as saliva, dental enamel, sweat, and gastric acid." (is-a Mixture) (role concrete)) (defclass Blood "SUO 1.15: September 6, 2001\nA fluid present in &%Animals that transports &%Nutrients to and waste products away from various &%BodyParts." (is-a BodySubstance) (role concrete)) (defclass Tissue "SUO 1.15: September 6, 2001\nAn aggregation of similarly specialized &%Cells and the associated intercellular substance. &%Tissues are relatively non-localized in comparison to &%BodyParts, &%Organs or &%Organ components. The main features of &%Tissues are self-connectivity (see &%SelfConnectedObject) and being a homogeneous mass (all parts in the same granularity are instances of &%Tissue as well)." (is-a BodySubstance) (role concrete)) (defclass Bone "SUO 1.15: September 6, 2001\nRigid &%Tissue composed largely of calcium that makes up the skeleton of &%Vertebrates. Note that this &%Class also includes teeth." (is-a Tissue) (role concrete)) (defclass Muscle "SUO 1.15: September 6, 2001\nNonrigid &%Tissue appearing only in &%Animals and composed largely of contractile cells." (is-a Tissue) (role concrete)) (defclass FatTissue "SUO 1.15: September 6, 2001\nNonrigid &%Tissue that is composed largely of fat cells." (is-a Tissue) (role concrete)) (defclass BiologicallyActiveSubstance "SUO 1.15: September 6, 2001\nA &%Substance that is capable of inducing a change in the structure or functioning of an &%Organism. This &%Class includes &%Substances used in the treatment, diagnosis, prevention or analysis of normal and abnormal body function. This &%Class also includes &%Substances that occur naturally in the body and are administered therapeutically. Finally, &%BiologicallyActiveSubstance includes &%Nutrients, most drugs of abuse, and agents that require special handling because of their toxicity." (is-a Substance) (role concrete)) (defclass Nutrient "SUO 1.15: September 6, 2001\nA &%BiologicallyActiveSubstance produced or required by an &%Organism, of primary interest because of its role in the biologic functioning of the &%Organism." (is-a BiologicallyActiveSubstance CompoundSubstance) (role concrete)) (defclass Protein "SUO 1.15: September 6, 2001\nA &%Nutrient made up of amino acids joined by peptide bonds." (is-a Nutrient) (role concrete)) (defclass Enzyme "SUO 1.15: September 6, 2001\nA complex &%Protein that is produced by living cells and which catalyzes specific biochemical reactions. There are six main types of enzymes: oxidoreductases, transferases, hydrolases, lyases, isomerases, and ligases." (is-a Protein) (role concrete)) (defclass Carbohydrate "SUO 1.15: September 6, 2001\nAn element of living cells and a source of energy for &%Animals. This class includes both simple &%Carbohydrates, i.e. sugars, and complex &%Carbohydrates, i.e. starches." (is-a Nutrient) (role concrete)) (defclass Vitamin "SUO 1.15: September 6, 2001\nA &%Nutrient present in natural products or made synthetically, which is essential in the diet of &%Humans and other higher &%Animals. Included here are &%Vitamin precursors and provitamins." (is-a Nutrient) (role concrete)) (defclass Hormone "SUO 1.15: September 6, 2001\nIn &%Animals, a chemical secreted by an endocrine gland whose products are released into the circulating fluid. &%Plant hormones or synthetic hormones which are used only to alter or control various physiologic processes, e.g., reproductive control agents, are assigned to the &%Class &%BiologicallyActiveSubstance. &%Hormones act as chemical messengers and regulate various physiologic processes such as growth, reproduction, metabolism, etc. They usually fall into two broad categories, viz. steroid hormones and peptide hormones." (is-a BodySubstance BiologicallyActiveSubstance) (role concrete)) (defclass CorpuscularObject "SUO 1.15: September 6, 2001\nA &%SelfConnectedObject whose parts have properties that are not shared by the whole." (is-a SelfConnectedObject) (role concrete)) (defclass OrganicObject "SUO 1.15: September 6, 2001\nThis class encompasses &%Organisms, &%CorpuscularObjects that are parts of &%Organisms, i.e. &%BodyParts, and &%CorpuscularObjects that are nonintentionally produced by &%Organisms, e.g. &%ReproductiveBodies." (is-a CorpuscularObject) (role concrete)) (defclass AnatomicalStructure "SUO 1.15: September 6, 2001\nA normal or pathological part of the anatomy or structural organization of an &%Organism. This class covers &%BodyParts, as well as structures that are given off by &%Organisms, e.g. &%ReproductiveBodies." (is-a OrganicObject) (role concrete)) (defclass ReproductiveBody "SUO 1.15: September 6, 2001\nReproductive structure of &%Organisms. Consists of an &%Embryonic &%Object and a nutritive/protective envelope. Note that this class includes seeds, spores, and &%FruitOrVegetables, as well as the eggs produced by &%Animals." (is-a AnatomicalStructure) (role concrete)) (defclass BodyPart "SUO 1.15: September 6, 2001\nA collection of &%Cells and &%Tissues which are localized to a specific area of an &%Organism and which are not pathological. The instances of this &%Class range from gross structures to small components of complex &%Organs." (is-a AnatomicalStructure) (role concrete)) (defclass BodyCovering "SUO 1.15: September 6, 2001\nAny &%BodyPart which is a covering of another &%BodyPart or of an entire &%Organism. This would include the rinds of &%FruitOrVegetables and the skins of &%Animals." (is-a BodyPart) (role concrete)) (defclass BodyJunction "SUO 1.15: September 6, 2001\nThe place where two &%BodyParts meet or connect." (is-a BodyPart) (role concrete)) (defclass BodyVessel "SUO 1.15: September 6, 2001\nAny tube-like structure which occurs naturally in an &%Organism and through which a &%BodySubstance can circulate." (is-a BodyPart) (role concrete)) (defclass Cell "SUO 1.15: September 6, 2001\nThe fundamental structural and functional unit of living &%Organisms." (is-a BodyPart) (role concrete)) (defclass Organ "SUO 1.15: September 6, 2001\nA somewhat independent &%BodyPart that performs a specialized function." (is-a BodyPart) (role concrete)) (defclass Gland "SUO 1.15: September 6, 2001\nAn &%Organ that removes &%Substances from the &%Blood, alters them in some way, and then releases them." (is-a Organ) (role concrete)) (defclass Artifact "SUO 1.15: September 6, 2001\nA &%CorpuscularObject that is the product of a &%Making." (is-a CorpuscularObject) (role concrete)) (defclass Product "SUO 1.15: September 6, 2001\nAn &%Artifact that is produced by &%Manufacture and that is intended to be sold." (is-a Artifact) (role concrete)) (defclass StationaryArtifact "SUO 1.15: September 6, 2001\nA &%StationaryArtifact is an &%Artifact that has a fixed spatial location. Most instances of this &%Class are architectural works, e.g. the Eiffel Tower, the Great Pyramids, office towers, single-family houses, etc." (is-a Artifact) (role concrete)) (defclass Building "SUO 1.15: September 6, 2001\nThe Class of &%StationaryArtifacts which are intended to house &%Humans and their activities." (is-a StationaryArtifact) (role concrete)) (defclass Room "SUO 1.15: September 6, 2001\nA &%properPart of a &%Building which is separated from the exterior of the &%Building and/or other &%Rooms of the &%Building by walls. Some &%Rooms may have a specific purpose, e.g. sleeping, bathing, cooking, entertainment, etc." (is-a StationaryArtifact) (role concrete)) (defclass ArtWork "SUO 1.15: September 6, 2001\n&%Artifacts that are created primarily for aesthetic appreciation. Note that this &%Class does not include most examples of architecture, which belong under &%StationaryArtifact." (is-a Artifact) (role concrete)) (defclass Fabric "SUO 1.15: September 6, 2001\n&%Artifacts that are created by weaving together natural or synthetic fibers or by treating the skins of certain sorts of &%Animals. Note that this &%Class includes articles that are created by stitching together various types of fabrics, e.g. bedspreads. On the other hand, &%Clothing is not a &%subclass of &%Fabric, because many clothing items contain elements that are not fabrics." (is-a Artifact) (role concrete)) (defclass Clothing "SUO 1.15: September 6, 2001\n&%Artifact made out of fabrics and possibly other materials that are used to cover the bodies of &%Humans." (is-a Artifact) (role concrete)) (defclass Device "SUO 1.15: September 6, 2001\nA &%Device is an &%Artifact whose purpose is to serve as an &%instrument in a specific type of task." (is-a Artifact) (role concrete)) (defclass MusicalInstrument "SUO 1.15: September 6, 2001\nA &%Device which is manipulated by a &%Human and whose purpose is to produce &%Music." (is-a Device) (role concrete)) (defclass TransportationDevice "SUO 1.15: September 6, 2001\nA &%TransportationDevice is a &%Device which serves as the &%instrument in a &%Transportation &%Process which carries the &%patient of the &%Process from one point to another." (is-a Device) (role concrete)) (defclass Weapon "SUO 1.15: September 6, 2001\nThe &%Class of &%Devices that are designed primarily to damage or destroy &%Humans/&%Animals, &%StationaryArtifacts or the places inhabited by &%Humans/&%Animals." (is-a Device) (role concrete)) (defclass EngineeringComponent "SUO 1.15: September 6, 2001\nA fundamental concept that applies in many engineering domains. An &%EngineeringComponent is an element of a &%Device that is a physically whole object, such as one might see listed as standard parts in a catalog. The main difference betweeen &%EngineeringComponents and arbitrary globs of matter is that &%EngineeringComponents are object-like in a modeling sense. Thus, an &%EngineeringComponent is not an arbtrary subregion, but a part of a system with a stable identity." (is-a Device) (role concrete) (single-slot connectedEngineeringComponents ;+ (comment "This is the most general connection relation between &%EngineeringComponents. If (&%connectedEngineeringComponents ?COMP1 ?COMP2), then neither ?COMP1 nor ?COMP2 can be an &%engineeringSubcomponent of the other. The relation &%connectedEngineeringComponents is a &%SymmetricRelation; there is no information in the direction of connection between two components. It is also an &%IrreflexiveRelation; no &%EngineeringComponent bears this relation to itself. Note that this relation does not associate a name or type with the connection.") (type INSTANCE) ;+ (allowed-classes EngineeringComponent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot engineeringSubcomponent ;+ (comment "(&%engineeringSubcomponent ?SUB ?SUPER) means that the &%EngineeringComponent ?SUB is structurally a &%properPart ?SUPER. This relation is an &%AsymmetricRelation, since two &%EngineeringComponents cannot be subcomponents of each other.") (type INSTANCE) ;+ (allowed-classes EngineeringComponent) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass ContentBearingObject "SUO 1.15: September 6, 2001\nAny &%SelfConnectedObject that expresses information." (is-a SelfConnectedObject) (role concrete) (single-slot containsInformation ;+ (comment "A subrelation of &%represents. This predicate relates a &%ContentBearingObject to the &%Proposition that is expressed by the &%ContentBearingObject. Examples include the relationships between a physical novel and its story and between a printed score and its musical content.") (type INSTANCE) ;+ (allowed-classes Proposition) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot subsumesContentInstance ;+ (comment "A &%BinaryPredicate relating two instances of &%ContentBearingObject. (&%subsumesContentInstance ?OBJ1 ?OBJ2) means that the content expressed by ?OBJ2 is part of the content expressed by ?OBJ1. An example is the relationship between a handwritten poem and one of its stanzas. Note that this is a relation between instances, rather than &%Classes. If one wants to assert a content relationship between &%Classes, e.g. between the version of an intellectual work and a part of that work, the relation &%subsumesContentClass should be used.") (type INSTANCE) ;+ (allowed-classes ContentBearingObject) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot EditionFn ;+ (comment "A &%BinaryFunction that maps a type of text (e.g. Agatha Christie's Murder_on_the_Orient_Express) and a number to the edition of the text type corresponding to the number.") (type INSTANCE) ;+ (allowed-classes ContentBearingObject) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass SymbolicString "SUO 1.15: September 6, 2001\nThe &%Class of alphanumeric sequences." (is-a ContentBearingObject) (role concrete) (single-slot relatedExternalConcept ;+ (comment "Used to signify a three-place relation between a concept in an external knowledge source, a concept in the SUMO, and the name of the other knowledge source.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot KappaFn ;+ (comment "A class-forming operator that takes two arguments: a variable and a formula containing at least one unbound occurrence of the variable. The result of applying &%KappaFn to a variable and a formula is the &%SetOrClass of things that satisfy the formula. For example, we can denote the &%SetOrClass of prime numbers that are less than 100 with the following expression: (KappaFn ?NUMBER (and (instance ?NUMBER PrimeNumber) (lessThan ?NUMBER 100))). Note that the use of this function is discouraged, since there is currently no axiomatic support for it.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass Character "SUO 1.15: September 6, 2001\nAn element of an alphabet, a set of numerals, etc. Note that a &%Character may or may not be part of a &%Language. &%Character is a subclass of &%SymbolicString, because every instance of &%Character is an alphanumeric sequence consisting of a single element." (is-a SymbolicString) (role concrete)) (defclass Icon "SUO 1.15: September 6, 2001\nThis is the subclass of &%ContentBearingObjects which are not part of a &%Language and which have some sort of similarity with the &%Objects that they represent. This &%Class would include symbolic roadway signs, 'icons' in a graphical computer operating system, etc." (is-a ContentBearingObject) (role concrete)) (defclass LinguisticExpression "SUO 1.15: September 6, 2001\nThis is the subclass of &%ContentBearingObjects which are language-related. Note that this &%Class encompasses both &%Language and the the elements of &%Languages, e.g. &%Words." (is-a ContentBearingObject) (role concrete) (single-slot expressedInLanguage ;+ (comment "(&%expressedInLanguage ?EXPRESS ?LANG) means that ?EXPRESS is expressed in &%Language ?LANG.") (type INSTANCE) ;+ (allowed-classes Language) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass Language "SUO 1.15: September 6, 2001\nA system of signs for expressing thought. The system can be either natural or artificial, i.e. something that emerges gradually as a cultural artifact or something that is intentionally created by a person or group of people." (is-a LinguisticExpression) (role concrete)) (defclass AnimalLanguage "SUO 1.15: September 6, 2001\nThe &%subclass of &%Languages used by &%Animals other than &%Humans." (is-a Language) (role concrete)) (defclass ArtificialLanguage "SUO 1.15: September 6, 2001\nThe &%subclass of &%Languages that are designed by &%Humans." (is-a Language) (role concrete)) (defclass ComputerLanguage "SUO 1.15: September 6, 2001\nThe class of &%Languages designed for and interpreted by a computer." (is-a ArtificialLanguage) (role concrete)) (defclass HumanLanguage "SUO 1.15: September 6, 2001\nThe &%subclass of &%Languages used by &%Humans." (is-a Language) (role concrete) (single-slot citizen ;+ (comment "(&%citizen ?PERSON ?NATION) means that the &%Human ?PERSON is a citizen of &%Nation ?NATION.") (type INSTANCE) ;+ (allowed-classes Nation) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot occupiesPosition ;+ (comment "(&%occupiesPosition ?PERSON ?POSITION ?ORG) means that ?PERSON holds the &%Position ?POSITION at &%Organization ?ORG. For example, (&%occupiesPosition &%TomSmith &%ResearchDirector &%AcmeLaboratory) means that &%TomSmith is a research director at Acme Labs.") (type INSTANCE) ;+ (allowed-classes Position) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass ConstructedLanguage "SUO 1.15: September 6, 2001\nThe &%subclass of &%HumanLanguages that did not originate diachronically, but were designed by a &%Human. This &%Class includes languages like Esperanto that were created to facilitate international communication." (is-a HumanLanguage ArtificialLanguage) (role concrete)) (defclass NaturalLanguage "SUO 1.15: September 6, 2001\nThe &%subclass of &%HumanLanguages which are not designed and which evolve from generation to generation. This &%Class includes all of the national languages, e.g. English, Spanish, Japanese, etc. Note that this class includes dialects of natural languages." (is-a HumanLanguage) (role concrete)) (defclass Word "SUO 1.15: September 6, 2001\nA term of a &%Language that represents a concept." (is-a LinguisticExpression) (role concrete)) (defclass Noun "SUO 1.15: September 6, 2001\nOne of the parts of speech. The &%Class of &%Words that conventionally denote &%Objects." (is-a Word) (role concrete)) (defclass Verb "SUO 1.15: September 6, 2001\nOne of the parts of speech. The &%Class of &%Words that conventionally denote &%Processes." (is-a Word) (role concrete)) (defclass Adjective "SUO 1.15: September 6, 2001\nOne of the parts of speech. The &%Class of &%Words that conventionally denote &%Attributes of &%Objects." (is-a Word) (role concrete)) (defclass Adverb "SUO 1.15: September 6, 2001\nOne of the parts of speech. The &%Class of &%Words that conventionally denote &%Attributes of &%Processes." (is-a Word) (role concrete)) (defclass Particle "SUO 1.15: September 6, 2001\nAn umbrella &%Class for any &%Word that does not fit into the other subclasses of &%Word. A &%Particle is generally a small term that serves a grammatical or logical function, e.g. 'and', 'of', 'since', etc. At some point, this class might be broken up into the subclasses 'Connective', 'Preposition', etc. Note that the class &%Particle includes both personal and possessive pronouns, e.g. 'she', 'hers', 'it', 'its', etc." (is-a Word) (role concrete)) (defclass Morpheme "SUO 1.15: September 6, 2001\nPart of a &%Word which cannot be subdivided and which expresses a meaning." (is-a LinguisticExpression) (role concrete)) (defclass Phrase "SUO 1.15: September 6, 2001\nA set of &%Words in a &%Language which form a unit, i.e. express a meaning in the &%Language." (is-a LinguisticExpression) (role concrete)) (defclass VerbPhrase "SUO 1.15: September 6, 2001\nA &%Phrase that has the same function as a &%Verb." (is-a Phrase) (role concrete)) (defclass NounPhrase "SUO 1.15: September 6, 2001\nA &%Phrase that has the same function as a &%Noun." (is-a Phrase) (role concrete)) (defclass PrepositionalPhrase "SUO 1.15: September 6, 2001\nA &%Phrase that begins with a preposition and that functions as an &%Adjective or an &%Adverb." (is-a Phrase) (role concrete)) (defclass Text "SUO 1.15: September 6, 2001\nA &%Sentence or set of &%Sentences that perform a specific function related to &%Communication, e.g. express a discourse about a particular topic." (is-a LinguisticExpression Artifact) (role concrete)) (defclass MotionPicture "SUO 1.15: September 6, 2001\nA &%ContentBearingObject which depicts motion (and which may have an audio or text component as well). This &%Class covers films, videos, etc." (is-a Text) (role concrete) (single-slot path ;+ (comment "(&%path ?MOTION ?PATH) means that ?PATH is a route along which ?MOTION occurs. For example, Highway 101 is the path in the following proposition: the car drove up Highway 101.") (type INSTANCE) ;+ (allowed-classes Region) ;+ (cardinality 0 1) (create-accessor read-write))) (defclass Book "SUO 1.15: September 6, 2001\nA &%Text that has pages and is bound." (is-a Text) (role concrete)) (defclass Summary "SUO 1.15: September 6, 2001\nA short &%Text that is a summary of another, longer &%Text." (is-a Text) (role concrete)) (defclass Article "SUO 1.15: September 6, 2001\nAn article in a &%Book or &%Series." (is-a Text) (role concrete)) (defclass Certificate "SUO 1.15: September 6, 2001\nA &%Text that confers a right or obligation on the holder of the &%Certificate. Note that the right or obligation need not be a legal one, as in the case of an academic diploma that grants certain privileges in the professional world." (is-a Text) (role concrete)) (defclass Patent "SUO 1.15: September 6, 2001\nA &%Certificate that expresses the content of an invention that has been accorded legal protection by a governemental entity." (is-a Certificate) (role concrete)) (defclass Sentence "SUO 1.15: September 6, 2001\nA syntactically well-formed formula of a &%Language. It includes, at minimum, a predicate and a subject (which may be explicit or implicit), and it expresses a &%Proposition." (is-a LinguisticExpression) (role concrete)) (defclass Formula "SUO 1.15: September 6, 2001\nA syntactically well-formed formula in the SUO-KIF knowledge representation language." (is-a Sentence) (role concrete) (single-slot holdsRight ;+ (comment "Expresses a relationship between a &%Formula and a &%CognitiveAgent whereby the &%CognitiveAgent has the right to bring it about that the &%Formula is true.") (type INSTANCE) ;+ (allowed-classes CognitiveAgent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot confersRight ;+ (comment "Expresses the relationship between a &%Formula, an &%Entity, and a &%CognitiveAgent when the &%Entity authorizes the &%CognitiveAgent to bring it about that the &%Formula is true.") (type INSTANCE) ;+ (allowed-classes Entity) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot %3D%3E ;+ (comment "The truth-functional connective of implication.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot and ;+ (comment "The truth-functional connective of conjunction.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot independentProbability ;+ (comment "One of the basic &%ProbabilityRelations. (&%independentProbability ?FORMULA1 ?FORMULA2) means that the probabilities of ?FORMULA1 and ?FORMULA2 being true are independent.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot decreasesLikelihood ;+ (comment "One of the basic &%ProbabilityRelations. (&%decreasesLikelihood ?FORMULA1 ?FORMULA2) means that ?FORMULA2 is less likely to be true if ?FORMULA1 is true.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot ProbabilityFn (type INSTANCE) ;+ (allowed-classes RealNumber) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot entails ;+ (comment "The operator of logical entailment. (&%entails ?FORMULA1 ?FORMULA2) means that ?FORMULA2 can be derived from ?FORMULA1 by means of the proof theory of SUO-KIF.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot holdsObligation ;+ (comment "Expresses a relationship between a &%Formula and a &%CognitiveAgent whereby the &%CognitiveAgent has the obligation to bring it about that the &%Formula is true.") (type INSTANCE) ;+ (allowed-classes CognitiveAgent) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot or ;+ (comment "The truth-functional connective of disjunction.") (type INSTANCE) ;+ (allowed-classes Formula) ;+ (cardinality 0 1) (create-accessor read-write)) (single-slot confersObligation ;+ (comment "Ex