;; This file is the source file for the SUMO (Standard Upper Merged Ontology), ;; an ontology that was developed within the SUO Working Group by merging the ;; various SUO content sources. The basis for the merge is John Sowa's upper ;; ontology (as described at http://www.bestweb.net/~sowa/ontology/toplevel.htm ;; and in Chapter 2 of his book _Knowledge Representation_, Brooks/Cole, 2000). ;; The definitions and axioms of the other SUO sources have been aligned with ;; this ontology. ;; In addition to Sowa's ontology, the merge incorporates Russell and Norvig's ;; ontology, PSL (Process Specification Language), Casati and Varzi's theory of ;; holes, Allen's temporal axioms, the relatively noncontroversial elements of ;; Smith's and Guarino's respective mereotopologies, the KIF formalization of the ;; CPR (Core Plan Representation), the ontologies available on the Ontolingua ;; server maintained by Stanford University's Knowledge Systems Laboratory, the ;; ontologies developed by ITBM-CNR, and a "Structural Ontology" proposed by ;; David Whitten and substantially revised and extended by Chris Menzel. ;; This ontology uses a first-order modal language, i.e., a first-order language ;; with the sentential operators "necessary" and "possible". ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; ;; STRUCTURAL ONTOLOGY ;; ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; The Structural Ontology consists of definitions of certain syntactic ;; abbreviations that can be both heuristically useful and computationally ;; advantageous. (instance-of instance-of AntisymmetricRelation) (nth-domain instance-of 1 Entity) (nth-domain instance-of 2 Class) (documentation instance-of "An object is an &%instance-of a &%Class if it is a member of that &%Class. 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-of about specificity or uniqueness.") (instance-of subclass-of PartialOrderingRelation) (nth-domain subclass-of 1 Class) (nth-domain subclass-of 2 Class) (documentation subclass-of "&%Class C is a subclass of &%Class P only if every instance of C is also an instance of P. A class may have multiple superclasses and subclasses.") (=> (subclass-of ?SUBCLASS ?CLASS) (forall (?INST) (=> (instance-of ?INST ?SUBCLASS) (instance-of ?INST ?CLASS)))) (instance-of subrelation-of PartialOrderingRelation) (nth-domain subrelation-of 1 Relation) (nth-domain subrelation-of 2 Relation) (documentation subrelation-of "A &%Relation R is a &%subrelation-of &%Relation R' if R is a &%subclass-of 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-of is called #$genls.") (=> (subrelation-of ?PRED1 ?PRED2) (exists (?NUMBER) (and (valence ?PRED1 ?NUMBER) (valence ?PRED2 ?NUMBER)))) (=> (and (subrelation-of ?PRED1 ?PRED2) (nth-domain ?PRED2 ?NUMBER ?CLASS)) (nth-domain ?PRED1 ?NUMBER ?CLASS)) (instance-of nth-domain TernaryRelation) (nth-domain nth-domain 1 Relation) (nth-domain nth-domain 2 PositiveInteger) (nth-domain nth-domain 3 Class) (documentation nth-domain "Provides a computationally and heuristically convenient mechanism for declaring the argument types of a given relation. The formula (&%nth-domain ?REL 3 ?CLASS) says that the 3rd element of each tuple in the relation ?REL is an instance of ?CLASS. Specifying argument types 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 &%Class already defined in the ontology, one can specify a Class compositionally with the functions &%UnionFn, &%IntersectionFn, &%KappaFn, etc.") (=> (nth-domain ?PRED 1 ?CLASS) (forall (?INST1 ?INST2) (=> (holds ?PRED ?INST1 ?INST2) (instance-of ?INST1 ?CLASS)))) (=> (nth-domain ?PRED 2 ?CLASS) (forall (?INST1 ?INST2) (=> (holds ?PRED ?INST1 ?INST2) (instance-of ?INST2 ?CLASS)))) (=> (nth-domain ?PRED 1 ?CLASS) (forall (?INST1 ?INST2 ?INST3) (=> (holds ?PRED ?INST1 ?INST2 ?INST3) (instance-of ?INST1 ?CLASS)))) (=> (nth-domain ?PRED 2 ?CLASS) (forall (?INST1 ?INST2 ?INST3) (=> (holds ?PRED ?INST1 ?INST2 ?INST3) (instance-of ?INST2 ?CLASS)))) (=> (nth-domain ?PRED 3 ?CLASS) (forall (?INST1 ?INST2 ?INST3) (=> (holds ?PRED ?INST1 ?INST2 ?INST3) (instance-of ?INST3 ?CLASS)))) (instance-of nth-domain-subclass TernaryRelation) (nth-domain nth-domain-subclass 1 Relation) (nth-domain nth-domain-subclass 2 PositiveInteger) (nth-domain nth-domain-subclass 3 Class) (documentation nth-domain-subclass "&%Predicate used to specify argument type restrictions of &%Predicates. The formula (&%nth-domain-subclass ?REL 3 ?CLASS) says that the 3rd element of each tuple in the relation ?REL is a subclass of ?CLASS.") (=> (nth-domain-subclass ?PRED 1 ?CLASS) (forall (?INST1 ?INST2) (=> (holds ?PRED ?INST1 ?INST2) (subclass-of ?INST1 ?CLASS)))) (=> (nth-domain-subclass ?PRED 2 ?CLASS) (forall (?INST1 ?INST2) (=> (holds ?PRED ?INST1 ?INST2) (subclass-of ?INST2 ?CLASS)))) (=> (nth-domain-subclass ?PRED 1 ?CLASS) (forall (?INST1 ?INST2 ?INST3) (=> (holds ?PRED ?INST1 ?INST2 ?INST3) (subclass-of ?INST1 ?CLASS)))) (=> (nth-domain-subclass ?PRED 2 ?CLASS) (forall (?INST1 ?INST2 ?INST3) (=> (holds ?PRED ?INST1 ?INST2 ?INST3) (subclass-of ?INST2 ?CLASS)))) (=> (nth-domain-subclass ?PRED 3 ?CLASS) (forall (?INST1 ?INST2 ?INST3) (=> (holds ?PRED ?INST1 ?INST2 ?INST3) (subclass-of ?INST3 ?CLASS)))) (instance-of range AsymmetricRelation) (nth-domain range 1 Function) (nth-domain-subclass range 2 Entity) (documentation range "Gives the range of a function. In other words, (&%range ?FUNCTION ?CLASS) means that all of the values assigned by ?FUNCTION are elements of ?CLASS.") (instance-of valence AsymmetricRelation) (nth-domain valence 1 Relation) (nth-domain valence 2 PositiveInteger) (singleValued valence 2) (documentation valence "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 or &%VariableArityFunction. For example, &%holds is a &%VariableArityRelation.") (instance-of documentation AsymmetricRelation) (nth-domain documentation 1 Entity) (nth-domain documentation 2 SymbolicString) (documentation documentation "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.") (instance-of disjoint SymmetricRelation) (nth-domain disjoint 1 Class) (nth-domain disjoint 2 Class) (documentation disjoint "&%Classes are &%disjoint only if they share no instances, i.e. just in case the result of applying &%IntersectionFn to them is the &%NullSet.") (=> (disjoint ?class1 ?class2) (forall (?X) (not (and (instance-of ?X ?class1) (instance-of ?X ?class2))))) (instance-of contraryProperty SymmetricRelation) (instance-of contraryProperty TransitiveRelation) (instance-of contraryProperty IrreflexiveRelation) (nth-domain contraryProperty 1 Attribute) (nth-domain contraryProperty 2 Attribute) (documentation contraryProperty "Means that the two arguments are properties that are opposed to one another, e.g. Cold verus Hot or Elastic versus Rigid.") (=> (and (attribute-of ?X ?Y) (contraryProperty ?Y ?Z)) (not (attribute-of ?X ?Z))) (instance-of exhaustiveDecomposition VariableArityRelation) (nth-domain exhaustiveDecomposition 1 Class) (relatedInternalConcept exhaustiveDecomposition partition) (documentation exhaustiveDecomposition "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.)") (forall (?INT) (nth-domain exhaustiveDecomposition ?INT Class)) (instance-of disjointDecomposition VariableArityRelation) (nth-domain disjointDecomposition 1 Class) (relatedInternalConcept disjointDecomposition exhaustiveDecomposition) (relatedInternalConcept disjointDecomposition disjoint) (documentation disjointDecomposition "A &%disjointDecomposition of a &%Class C is a set of subclasses of C that are mutually &%disjoint.") (forall (?INT) (nth-domain disjointDecomposition ?INT Class)) (subrelation-of partition exhaustiveDecomposition) (subrelation-of partition disjointDecomposition) (documentation partition "A &%partition of a class C is a set of mutually &%disjoint classes (a subclass partition) which covers C. Every instance of C is an instance of exactly one of the subclasses in the partition.") (instance-of singleValued AsymmetricRelation) (nth-domain singleValued 1 Predicate) (nth-domain singleValued 2 Integer) (documentation singleValued "(&%singleValued ?REL ?INT) means that the argument position of ?REL corresponding to ?INT is single-valued, i.e. an assignment of values to the other argument positions determines a unique value for the argument position corresponding to ?INT.") (=> (and (singleValued ?PRED 1) (holds ?PRED ?INST1 ?INST2) (holds ?PRED ?INST3 ?INST2)) (equal ?INST1 ?INST3)) (=> (and (singleValued ?PRED 2) (holds ?PRED ?INST2 ?INST1) (holds ?PRED ?INST2 ?INST3)) (equal ?INST1 ?INST3)) (=> (and (singleValued ?PRED 1) (holds ?PRED ?INST1 ?INST2 ?INST3) (holds ?PRED ?INST4 ?INST2 ?INST3)) (equal ?INST1 ?D)) (=> (and (singleValued ?PRED 2) (holds ?PRED ?INST1 ?INST2 ?INST4) (holds ?PRED ?INST1 ?INST3 ?INST4)) (equal ?INST2 ?INST3)) (=> (and (singleValued ?PRED 3) (holds ?PRED ?INST1 ?INST2 ?INST3) (holds ?PRED ?INST1 ?INST2 ?INST4)) (equal ?INST3 ?INST4)) (instance-of relatedInternalConcept EquivalenceRelation) (nth-domain relatedInternalConcept 1 Entity) (nth-domain relatedInternalConcept 2 Entity) (documentation relatedInternalConcept "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.") (instance-of relatedExternalConcept TernaryRelation) (nth-domain relatedExternalConcept 1 Entity) (nth-domain relatedExternalConcept 2 SymbolicString) (nth-domain relatedExternalConcept 3 Language) (relatedInternalConcept relatedExternalConcept relatedInternalConcept) (documentation relatedExternalConcept "Used to signify a three-place relation between a concept in the SUMO, a related concept in another knowledge source, and the name of the other knowledge source.") (instance-of subAttribute-of PartialOrderingRelation) (nth-domain subAttribute-of 1 Attribute) (nth-domain subAttribute-of 2 Attribute) (documentation subAttribute-of "Means that the second argument can be ascribed to everything which has the first argument ascribed to it.") (<=> (subAttribute-of ?ATTR1 ?ATT2) (forall (?OBJ) (=> (attribute-of ?OBJ ?ATTR1) (attribute-of ?OBJ ?ATTR2)))) (instance-of successorAttribute AsymmetricRelation) (nth-domain successorAttribute 1 Attribute) (nth-domain successorAttribute 2 Attribute) (documentation successorAttribute "(&%successorAttribute ?ATTR1 ?ATTR2) means that ?ATTR2 is the attribute that comes immediately after ?ATTR1 on the scale that they share.") (instance-of all-successorAttribute TransitiveRelation) (instance-of all-successorAttribute IrreflexiveRelation) (nth-domain all-successorAttribute 1 Attribute) (nth-domain all-successorAttribute 2 Attribute) (relatedInternalConcept all-successorAttribute successorAttribute) (documentation all-successorAttribute "The transitive closure of &%successorAttribute. (&%all-successorAttribute ?ATTR1 ?ATTR2) means that there is a chain of &%successorAttribute assertions connecting ?ATTR1 and ?ATTR2.") (instance-of KappaFn BinaryFunction) (nth-domain KappaFn 1 SymbolicString) (nth-domain KappaFn 2 KIF-Formula) (range KappaFn Class) (documentation KappaFn "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 &%Class of things that satisfy the formula. For example, we can denote the &%Class of prime numbers that are less than 100 with the following expression: (KappaFn ?NUMBER (and (instance-of ?NUMBER PrimeNumber) (lessThan ?NUMBER 100)))") (instance-of possible SententialOperator) (nth-domain possible 1 KIF-Formula) (documentation possible "The modal operator of possibility. Eventually this will need to be broken out into several notions of possibility. Presently, this relation covers everything from logical possibility to capability.") (instance-of necessary SententialOperator) (nth-domain necessary 1 KIF-Formula) (documentation necessary "The modal operator of necessity. Eventually this will need to be broken out into several notions of necessity.") ;; END FILE ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; ;; ONTOLOGY PROPER ;; ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;; ;; GENERAL CLASSES ;; ;;;;;;;;;;;;;;;;;;;;;;;;; ;; The following hierarchy incorporates content from Sowa, Russell & Norvig, ;; and the top-level ontology from ITBM-CNR. (documentation Entity "The universal class of individuals. This is the root node of the ontology.") ;; Everything is an entity (due to Robert E. Kent). (forall (?THING) (instance-of ?THING Entity)) ;; There are entities. (In standard FOPC, this axiom is redundant, since it is ;; implied by the one above. However, it is included here in case a "free ;; logic" or similar, nonstandard interpretation of the ontology is adopted). (exists (?THING) (instance-of ?THING Entity)) ;; Every class is a subclass of Entity, and vice versa. (<=> (instance-of ?C Class) (subclass-of ?C Entity)) (subclass-of Physical Entity) (documentation Physical "An entity that has a location in space-time. Note that points of space and time are themselves understood to have a location in space-time") ;; Something is Physical just in case it exists at some location at some time. (<=> (instance-of ?PHYS Physical) (exists (?LOC ?TIME) (and (located-at ?PHYS ?LOC) (exists-at ?PHYS ?TIME)))) (subclass-of Abstract Entity) (documentation Abstract "Properties or qualities as distinguished from any particular embodiment of the properties/qualities in a physical medium. Instances of Abstract can be said to exist in the same sense as mathematical objects such as sets and relations, but they cannot exist at a particular place and time without some physical encoding or embodiment.") ;; Something is Abstract just in case it has neither a spatial nor temporal ;; location. (<=> (instance-of ?ABS Abstract) (not (exists (?POINT) (or (located-at ?ABS ?POINT) (exists-at ?ABS ?POINT))))) ;; Abstract and Physical are disjoint. (disjoint Abstract Physical) (subclass-of Object Physical) (documentation Object "Corresponds roughly to the class of ordinary physical objects. An &%Object is thought of as continuing through time, but at any particular time is all there is at that time, in contrast to something that is thought of as being divided into stages (contrast &%Process). Examples include normal physical objects, geographical regions, and locations of &%Processes. The formal definition is that all the parts of an &%Object are present at the same time that the &%Object is; in other words, an &%Object cannot have 'parts' which are separated in time, such as the first and second halves of a football game. Note that the parts of an &%Object may change from time to time, and that every &%Object occupies exactly the same space and time as a &%Process (its lifespan). 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.") (subclass-of Process Physical) (documentation Process "Intuitively, the class of things that happen rather than endure. A &%Process is thought of as having temporal parts or stages, and so it cannot have all these parts together at one time (contrast &%Object). Examples include extended 'events' such as a football match or a race, events and actions of various kinds, states of motion and lifespans of &%Objects, which occupy the same space and time but are thought of as having stages instead of parts. The formal definition is: anything that lasts for a time but is not an &%Object. Note that a &%Process may have participants 'inside' it which are &%Objects, such as the players in a football match. In a 4D ontology, a &%Process is something whose spatiotemporal extent is thought of as dividing into temporal stages roughly perpendicular to the time-axis.") ;; An Object exists (and, hence, retains its identity) over time, i.e., ;; an object that exists at every point over some interval of time. (=> (instance-of ?OBJ Object) (exists (?TIME1 ?TIME2) (and (instance-of ?TIME1 TimePoint) (instance-of ?TIME2 TimePoint) (before ?TIME1 ?TIME2) (forall (?TIME) (=> (and (beforeEq ?TIME1 ?TIME) (beforeEq ?TIME ?TIME2)) (exists-at ?OBJ ?TIME)))))) ;; Object and Process are disjoint. (disjoint Object Process) ;; Each temporal part of a Process exists at some timepoint. (=> (and (instance-of ?PROC Process) (subProcess ?SUBPROC ?PROC)) (exists (?TIME) (exists-at ?SUBPROC ?TIME))) ;; Processes have temporal parts. (=> (instance-of ?PROC Process) (exists (?SUBPROC) (subProcess ?SUBPROC ?PROC))) ;; Objects have spatial parts. (=> (instance-of ?OBJ Object) (exists (?PART) (part-of ?PART ?OBJ))) (subclass-of NaturalProcess Process) (documentation NaturalProcess "A &%Process that occurs irrespective of the intentional activities of human beings or other animals.") (subclass-of IntentionallyCausedProcess Process) (disjoint IntentionallyCausedProcess NaturalProcess) (documentation IntentionallyCausedProcess "A &%Process that is set in motion by humans, other animals, software agents, and other entities or processes that can be regarded as having intentionality.") (=> (exists (?AGENT) (and (agent ?PROC ?AGENT) (instance-of ?AGENT Animal))) (instance-of ?PROC IntentionallyCausedProcess)) (=> (instance-of ?PROC IntentionallyCausedProcess) (exists (?PURP) (hasPurpose ?PROC ?PURP))) (subclass-of Activity IntentionallyCausedProcess) (documentation Activity "The class of &%IntentionallyCausedProcesses that are typically carried out for an extended time and in some way are 'institutionalized' or at least customary or conventional.") (subclass-of RecreationalActivity Activity) (documentation RecreationalActivity "An activity that is carried out for the purpose of recreation.") (subclass-of ExerciseActivity Activity) (documentation ExerciseActivity "An activity that is carried out for the purpose of exercise.") (subclass-of EducationalActivity Activity) (documentation EducationalActivity "An activity related to the organization and provision of education.") (subclass-of OrganizationalActivity Activity) (documentation OrganizationalActivity "An Activity that is carried out within an &%Organization.") (=> (instance-of ?ACT OrganizationalActivity) (exists (?ORG ?PERSON) (and (instance-of ?ORG Organization) (member ?PERSON ?ORG) (agent ?ACT ?PERSON)))) (subclass-of RegulatoryActivity OrganizationalActivity) (documentation RegulatoryActivity "An &%OrganizationalActivity carried out by officially constituted governments, or an &%OrganizationalActivity related to the creation or enforcement of the rules or regulations governing some field of endeavor.") (subclass-of Planning RegulatoryActivity) (documentation Planning "Specifying a set of actions in order to meet a set of goals or objectives.") (subclass-of OccupationalActivity OrganizationalActivity) (documentation OccupationalActivity "An &%OrganizationalActivity carried out as part of an occupation or job.") (=> (instance-of ?ACT OccupationalActivity) (exists (?ORG ?EMP) (and (instance-of ?ORG Organization) (employs ?ORG ?EMP) (agent ?ACT ?EMP)))) (subclass-of Motion IntentionallyCausedProcess) (documentation Motion "Any &%IntentionallyCausedProcess of movement between two distinct &%Physical points.") (=> (instance-of ?MOTION Motion) (exists (?ORIGIN ?DEST) (and (origin ?MOTION ?ORIGIN) (destination ?MOTION ?DEST) (not (equal ?ORIGIN ?DEST))))) (subclass-of Interaction IntentionallyCausedProcess) (documentation Interaction "An &%IntentionallyCausedProcess that involves two elements: an &%agent and a &%patient.") (=> (instance-of ?ACTION Interaction) (exists (?AGENT ?THEME) (and (agent ?ACTION ?AGENT) (patient ?ACTION ?THEME)))) (subclass-of Transportation Motion) (subclass-of Transportation Interaction) (relatedInternalConcept Transportation TransportationDevice) (documentation Transportation "The &%Process of moving passengers from one point to another.") (=> (instance-of ?TRANS Transportation) (exists (?DEVICE) (and (instance-of ?DEVICE TransportationDevice) (instrument ?TRANS ?DEVICE)))) (subclass-of Perception Interaction) (documentation Perception "Sensing some aspect of the material world. Note that the &%agent of this sensing is not necessarily an &%Organism.") (subclass-of Creation Interaction) (documentation Creation "An &%Interaction that involves three elements: an &%agent, a &%patient, and a &%result.") (=> (instance-of ?ACTION Creation) (exists (?RESULT) (result ?ACTION ?RESULT))) (subclass-of Destruction Creation) (documentation Destruction "A subclass of &%Creations where the result is an &%Object which was the result of an earlier &%Creation &%Process.") (subclass-of Transaction Interaction) (documentation Transaction "An &%Interaction that involves three elements: an &%agent, a &%patient, and a &%destination.") (=> (instance-of ?ACTION Transaction) (exists (?DEST) (destination ?ACTION ?DEST))) (subclass-of Communication Transaction) (documentation Communication "A &%Transaction that involves two &%agents, the sender and the receiver, and an instance of &%ContentBearingObject.") (=> (instance-of ?ACTION Communication) (exists (?OBJ) (and (instance-of ?OBJ ContentBearingObject) (patient ?ACTION ?OBJ)))) (subclass-of Ordering Communication) (documentation Ordering "A &%Communication in which the receiver is commanded to realize the content of a &%ContentBearingObject.") (subclass-of Bequeathing Transaction) (documentation Bequeathing "A general &%Class for &%Transactions in which the &%agent gives the &%destination something.") (subclass-of FinancialTransaction Transaction) (documentation FinancialTransaction "A &%Transaction that involves two &%agents and an instance of &%CurrencyMeasure.") (subclass-of Buying FinancialTransaction) (relatedInternalConcept Buying Selling) (documentation Buying "A &%FinancialTransaction in which an instance of &%CurrencyMeasure is exchanged for an instance of &%Physical.") (subclass-of Selling FinancialTransaction) (documentation Selling "A &%FinancialTransaction in which an instance of &%Physical is exchanged for an instance of &%CurrencyMeasure.") (<=> (and (instance-of ?BUY Buying) (agent ?BUY ?AGENT1) (origin ?BUY ?AGENT2) (patient ?BUY ?OBJECT)) (and (instance-of ?SELL Selling) (agent ?SELL ?AGENT2) (destination ?SELL ?AGENT1) (patient ?SELL ?OBJECT))) (subclass-of Region Object) (documentation Region "A topographic location. &%Regions encompass surfaces of &%Objects and &%GeographicObjects. Note that a &%Region is the only kind of &%Object which can be located at itself.") (subclass-of GeographicArea Region) (documentation GeographicArea "A geographic location, generally having definite boundaries. Note that this differs from its immediate superclass &%Region in that a &%GeographicArea is a &%Region of land of significant size.") (subclass-of Nation-Land GeographicArea) (documentation Nation-Land "A &%Nation-Land is the &%GeographicArea associated with a nation. For example, the &%Nation-Land of Australia is the &%Region making up the continent of Oceania.") (subclass-of Address GeographicArea) (documentation Address "A &%GeographicArea with definite boundaries and of relatively small size. This concept represents the state of 'being at an address'.") (subclass-of Organic Object) (documentation Organic "The &%Class of &%Objects that are living things, i.e. instances of &%Organism, or parts of &%Organisms.") (subclass-of Inorganic Object) (disjoint Inorganic Organic) (documentation Inorganic "The &%Class of &%Objects that are neither &%Organisms nor parts of &%Organisms.") (equal Inorganic (ComplementFn Organic)) (subclass-of Substance Object) (documentation Substance "An &%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 large body of water such as the ocean.") (=> (and (subclass-of ?OBJECTTYPE Substance) (instance-of ?OBJECT ?OBJECTTYPE) (part-of ?PART ?OBJECT)) (instance-of ?PART ?OBJECTTYPE)) (subclass-of OrganicSubstance Substance) (subclass-of OrganicSubstance Organic) (documentation OrganicSubstance "The &%Class of &%Substances which are instances of &%Organic.") (subclass-of InorganicSubstance Substance) (subclass-of InorganicSubstance Inorganic) (documentation InorganicSubstance "The &%Class of &%Substances which are instances of &%Inorganic.") (subclass-of Water InorganicSubstance) (documentation Water "The &%Class of samples of the compound H20. Note that this &%Class covers both pure and impure &%Water.") (subclass-of CorpuscularObject Object) (disjoint CorpuscularObject Substance) (documentation CorpuscularObject "An Object that has separable parts.") (=> (and (subclass-of ?OBJECTTYPE CorpuscularObject) (instance-of ?OBJECT ?OBJECTTYPE) (part-of ?PART ?OBJECT)) (not (instance-of ?PART ?OBJECTTYPE))) (=> (instance-of ?OBJ CorpuscularObject) (exists (?SUBSTANCETYPE1 ?SUBSTANCETYPE2 ?SUBSTANCE1 ?SUBSTANCE2) (and (subclass-of ?SUBSTANCETYPE1 Substance) (subclass-of ?SUBSTANCETYPE2 Substance) (instance-of ?SUBSTANCE1 ?SUBSTANCETYPE1) (instance-of ?SUBSTANCE2 ?SUBSTANCETYPE2) (constituent-material-of ?SUBSTANCE1 ?OBJ) (constituent-material-of ?SUBSTANCE2 ?OBJ) (not (equal ?SUBSTANCE1 ?SUBSTANCE2))))) (subclass-of Collection Object) (documentation Collection "Collections have &%members like &%Classes, but, unlike &%Classes, they have a position in space-time and &%members can be added and subtracted without thereby changing the identity of the &%Collection. Some examples are toolkits, football teams, and flocks of sheep.") (=> (instance-of ?COLL Collection) (exists (?OBJ) (member ?OBJ ?COLL))) (subclass-of OrganicObject CorpuscularObject) (subclass-of OrganicObject Organic) (documentation OrganicObject "A &%CorpuscularObject such as a tree or flower that has parts that are not completely separable, even though there are discontinuities.") (subclass-of Female OrganicObject) (documentation Female "An &%Organism or other &%OrganicObject that is female in nature.") (subclass-of Male OrganicObject) (documentation Male "An &%Organism or other &%OrganicObject that is male in nature.") (subclass-of Organism OrganicObject) (subclass-of Organism Agent) (documentation Organism "Generally, a living individual, including all &%Plants and &%Animals.") (=> (instance-of ?ORGANISM Organism) (exists (?TIME1 ?TIME2) (and (birthTime ?ORGANISM ?TIME1) (deathTime ?ORGANISM ?TIME2)))) (subclass-of InorganicObject CorpuscularObject) (subclass-of InorganicObject Inorganic) (documentation InorganicObject "Instances of &%CorpuscularObject that are also instances of &%Inorganic.") (subclass-of Representation Physical) (documentation Representation "An instance of &%Physical that &%represents something else. Note that this is an intentional relation - instances of &%Physical that accidentally convey some meaning to an &%Agent would not be examples of &%Representations.") (=> (instance-of ?OBJ Representation) (exists (?ENTITY) (represents ?OBJ ?ENTITY))) (subclass-of Icon Representation) (documentation Icon "This is the subclass of &%RepresentationalObjects 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.") (subclass-of LinguisticExpression Representation) (disjoint LinguisticExpression Icon) (documentation LinguisticExpression "This is the subclass of &%Representations which are language-related. Note that this &%Class encompasses both &%Language and the the elements of &%Languages, e.g. &%Words.") (subclass-of Language LinguisticExpression) (documentation Language "A 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.") (subclass-of Word LinguisticExpression) (partition Word Noun Verb Adjective Adverb Particle) (documentation Word "A term of a &%Language that represents a concept.") (=> (instance-of ?WORD Word) (exists (?PART) (and (part-of ?PART ?WORD) (instance-of ?PART Morpheme)))) (subclass-of SymbolicString LinguisticExpression) (documentation SymbolicString "The &%Class of all &%LinguisticExpressions that are represented as strings.") (subclass-of Noun Word) (documentation Noun "One of the parts of speech. The &%Class of &%Words that conventionally denote &%Objects.") (subclass-of Verb Word) (documentation Verb "One of the parts of speech. The &%Class of &%Words that conventionally denote &%Processes.") (subclass-of Adjective Word) (documentation Adjective "One of the parts of speech. The &%Class of &%Words that conventionally denote &%Attributes of &%Objects.") (subclass-of Adverb Word) (documentation Adverb "One of the parts of speech. The &%Class of &%Words that conventionally denote &%Attributes of &%Processes.") (subclass-of Particle Word) (documentation Particle "An 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.") (subclass-of AlphabeticCharacter LinguisticExpression) (documentation AlphabeticCharacter "An element of the alphabet of a &%Language.") (=> (instance-of ?STRING SymbolicString) (exists (?PART) (and (part-of ?PART ?STRING) (instance-of ?PART AlphabeticCharacter)))) (subclass-of Morpheme LinguisticExpression) (documentation Morpheme "Part of a &%Word which cannot be subdivided and which expresses a meaning.") (=> (instance-of ?MORPH Morpheme) (not (exists (?OTHERMORPH) (and (instance-of ?OTHERMORPH Morpheme) (part-of ?OTHERMORPH ?MORPH) (not (equal ?OTHERMORPH ?MORPH)))))) (=> (instance-of ?MORPH Morpheme) (exists (?WORD) (and (instance-of ?WORD Word) (part-of ?MORPH ?WORD)))) (subclass-of Phrase LinguisticExpression) (disjointDecomposition Phrase VerbPhrase NounPhrase PrepositionalPhrase Sentence) (documentation Phrase "A set of &%Words in a &%Language which form a unit, i.e. express a meaning in the &%Language.") (=> (instance-of ?PHRASE Phrase) (exists (?PART1 ?PART2) (and (part-of ?PART1 ?PHRASE) (part-of ?PART2 ?PHRASE) (instance-of ?PART1 Word) (instance-of ?PART2 Word) (not (equal ?PART1 ?PART2))))) (subclass-of VerbPhrase Phrase) (documentation VerbPhrase "A &%Phrase that has the same function as a &%Verb.") (subclass-of NounPhrase Phrase) (disjoint NounPhrase VerbPhrase) (documentation NounPhrase "A &%Phrase that has the same function as a &%Noun.") (subclass-of PrepositionalPhrase Phrase) (documentation PrepositionalPhrase "A &%Phrase that begins with a preposition and that functions as an &%Adjective or an &%Adverb.") (subclass-of Sentence Phrase) (subclass-of Sentence ContentBearingObject) (documentation Sentence "A syntactically well-formed formula of a natural or artificial &%Language. It expresses a complete thought, i.e., a &%Proposition.") (=> (instance-of ?SENTENCE Sentence) (exists (?PROP) (and (instance-of ?PROP Proposition) (containsInformation ?SENTENCE ?PROP)))) (=> (instance-of ?SENTENCE Sentence) (exists (?PHRASE1 ?PHRASE2) (and (instance-of ?PHRASE1 NounPhrase) (instance-of ?PHRASE2 VerbPhrase) (part-of ?PHRASE1 ?SENTENCE) (part-of ?PHRASE2 ?SENTENCE)))) (subclass-of Question Sentence) (documentation Question "The class of &%Sentences that ask a &%Question.") (subclass-of KIF-Formula Sentence) (documentation KIF-Formula "A syntactically well-formed formula in the SUO-KIF knowledge representation language.") (subclass-of ContentBearingObject Representation) (relatedInternalConcept ContentBearingObject ContentBearingProcess) (relatedInternalConcept ContentBearingObject containsInformation) (documentation ContentBearingObject "Any &%Object that expresses a &%Proposition. It is important to distinguish &%Propositions from the &%ContentBearingObjects that express them. A &%Proposition is a piece of information, e.g. that the cat is on the mat, but a &%ContentBearingObject is an &%Object that represents this information. A &%Proposition is an abstraction that may have multiple representations: strings, sounds, icons, etc. For example, the &%Proposition that the cat is on the mat is represented here as a string of graphical characters displayed on a monitor and/or printed on paper, but it can be represented by a sequence of sounds or by some non-latin alphabet or by some cryptographic form.") (=> (instance-of ?OBJECT ContentBearingObject) (exists (?PROP) (containsInformation ?OBJECT ?PROP))) (subclass-of Text ContentBearingObject) (documentation Text "A set of &%Sentences that express a discourse on a subject of some sort.") (=> (instance-of ?TEXT Text) (exists (?PART1 ?PART2) (and (part-of ?PART1 ?TEXT) (part-of ?PART2 ?TEXT) (instance-of ?PART1 Sentence) (instance-of ?PART2 Sentence) (not (equal ?PART1 ?PART2))))) (subclass-of Book Text) (documentation Book "A &%Text that has pages and is bound.") (subclass-of ContentBearingProcess Representation) (relatedInternalConcept ContentBearingObject realization-of) (documentation ContentBearingProcess "Any &%Process that expresses a &%Proposition. It is important to distinguish &%Propositions from the &%ContentBearingProcesses that express them. A &%Proposition is a piece of information, e.g. that the cat is on the mat, but a &%ContentBearingProcess is an &%Process that realizes this information. A &%Proposition is an abstraction that may have multiple representations: performances, sounds, bit streams, etc.") (=> (instance-of ?PROCESS ContentBearingProcess) (exists (?PROP) (realization-of ?PROCESS ?PROP))) (subclass-of SubmolecularObject InorganicObject) (documentation SubmolecularObject "The &%Class of &%InorganicObjects that compose &%Molecules.") (=> (instance-of ?SUBMOLE SubmolecularObject) (exists (?MOLE) (and (instance-of ?MOLE Molecule) (part-of ?SUBMOLE ?MOLE)))) (subclass-of Molecule InorganicObject) (documentation Molecule "A &%Molecule is a set of &%Atoms that are chemically bonded together.") (=> (instance-of ?MOLE Molecule) (exists (?ATOM1 ?ATOM2) (and (instance-of ?ATOM1 Atom) (instance-of ?ATOM2 Atom) (part-of ?ATOM1 ?MOLE) (part-of ?ATOM2 ?MOLE) (not (equal ?ATOM1 ?ATOM2))))) (subclass-of Atom SubmolecularObject) (documentation Atom "An extremely small unit of matter that retains its identity in Chemical reactions. It consists of an &%AtomicNucleus and &%Electrons surrounding the &%AtomicNucleus.") (=> (instance-of ?ATOM Atom) (exists (?NUCLEUS ?ELECTRON) (and (component-of ?NUCLEUS ?ATOM) (component-of ?ELECTRON ?ATOM) (instance-of ?NUCLEUS AtomicNucleus) (instance-of ?ELECTRON Electron)))) (=> (instance-of ?ATOM Atom) (forall (?NUCLEUS1 ?NUCLEUS2) (=> (and (component-of ?NUCLEUS1 ?ATOM) (component-of ?NUCLEUS2 ?ATOM) (instance-of ?NUCLEUS1 AtomicNucleus) (instance-of ?NUCLEUS2 AtomicNucleus)) (equal ?NUCLEUS1 ?NUCLEUS2)))) (subclass-of SubatomicParticle SubmolecularObject) (documentation SubatomicParticle "The class of &%SubmolecularObjects that are smaller than &%Atoms and often compose &%Atoms.") (subclass-of AtomicNucleus SubatomicParticle) (documentation AtomicNucleus "The core of the &%Atom. It is composed of &%Protons and &%Neutrons.") (=> (instance-of ?NUCLEUS AtomicNucleus) (exists (?NEUTRON ?PROTON) (and (component-of ?NEUTRON ?NUCLEUS) (component-of ?PROTON ?NUCLEUS) (instance-of ?NEUTRON Neutron) (instance-of ?PROTON Proton)))) (subclass-of Electron SubatomicParticle) (documentation Electron "&%SubatomicParticles that surround the &%AtomicNucleus. They have a negative charge.") (subclass-of Proton SubatomicParticle) (documentation Proton "Components of the &%AtomicNucleus. They have a positive charge.") (subclass-of Neutron SubatomicParticle) (documentation Neutron "Components of the &%AtomicNucleus. They have no charge.") (subclass-of Artifact InorganicObject) (documentation Artifact "An &%Object with separable parts that is created by &%Humans.") (=> (instance-of ?ARTIFACT Artifact) (exists (?PROCESS ?HUMAN) (and (instance-of ?PROCESS Process) (instance-of ?HUMAN Human) (agent ?PROCESS ?HUMAN) (result ?PROCESS ?ARTIFACT)))) ;; The following ground facts incorporate the 'Agent' hierarchy from the ;; corresponding ontology on the Ontolingua server. It also includes ;;predicates defined in the ITBM-CNR ontology "Actors". (subclass-of Agent Object) (documentation Agent "Something or someone that can act on its own and produce changes in the world.") (<=> (instance-of ?AGENT Agent) (exists (?PROC) (agent ?PROC ?AGENT))) (subclass-of Nation Agent) (relatedInternalConcept Nation Nation-Land) (documentation Nation "That aspect of a Nation which can act automonously and which is the same throughout the changes in population and borders. Compare the &%Class Nation-Land.") (=> (instance-of ?NATION Nation) (exists (?GOV) (and (instance-of ?GOV Government) (subOrganizations ?GOV ?NATION)))) (subclass-of Person Agent) (documentation Person "An &%Agent with a certain degree of intelligence and certain rights and responsibilities. This is essentially the legal/ethical notion of &%Person. Note that, although &%Human is a subclass of &%Person, there may be instances of &%Person which are not also instances of &%Human. For example, chimpanzees, gorillas, dolphins, whales, and some extraterrestrials (if they exist) may be &%Persons.") (subclass-of PersonBySocialRole Person) (documentation PersonBySocialRole "The &%Class of all &%Persons who are considered with respect to a social role that they have.") (=> (instance-of ?PERSON PersonBySocialRole) (exists (?ACT) (and (instance-of ?ACT OrganizationalActivity) (agent ?ACT ?PERSON)))) (subclass-of PersonByOccupationalRole PersonBySocialRole) (documentation PersonByOccupationalRole "The &%Class of all &%Persons who are considered with respect to an occupational role that they have.") (=> (instance-of ?PERSON PersonByOccupationalRole) (exists (?ACT) (and (instance-of ?ACT OccupationalActivity) (agent ?ACT ?PERSON)))) (subclass-of RetiredPerson PersonByOccupationalRole) (documentation RetiredPerson "The &%Class of all &%Persons who are retired.") (=> (instance-of ?PERSON RetiredPerson) (not (exists (?ORG) (employs ?ORG ?PERSON)))) (subclass-of Class Abstract) (documentation Class "A &%Class can be thought of as a &%Set that is associated with a property or conjunction of properties that specify the condition(s) for membership of individuals in the &%Set. This means that classes are defined intensionally. Hence, two different classes may have the same extension (in this case they are &%equal to each other). The fact that something ?THING is an instance of the &%Class ?CLASS is denoted by the formula (instance-of ?THING ?CLASS).") (subclass-of Relation Class) (documentation Relation "A Class of ordered tuples.") (subclass-of Set Class) (documentation Set "A &%Class without an intension, i.e. a &%Class that is not associated with a property or conjunction of properties that specify the condition(s) for membership of individuals in the &%Set. This is the standard set-theoretic concept of &%Set.") (subclass-of FiniteSet Set) (documentation FiniteSet "A &%Set containing a finite number of elements.") (=> (instance-of ?SET FiniteSet) (exists (?NUMBER) (cardinality ?SET ?NUMBER))) (subclass-of Proposition Abstract) (documentation Proposition "&%Propositions are &%Abstract entities that express a complete thought or a series of such thoughts. As an example, the formula '(instance-of Yojo Cat)' expresses the &%Proposition that the entity named Yojo is an element of the &%Class of Cats.") (subclass-of Procedure Proposition) (documentation Procedure "A sequence-dependent specification. Some examples are &%ComputerPrograms, finite-state machines, cooking recipes, musical scores, conference schedules, driving directions, and the scripts of plays and movies.") (subclass-of ComputerProgram Procedure) (documentation ComputerProgram "A set of instructions in a computer programming language that can be executed by a computer.") (subclass-of Plan Procedure) (documentation Plan "A sequence of &%Processes which is intended to satisfy a specified purpose at some future time.") (=> (instance-of ?PLAN Plan) (exists (?PLANNING) (and (instance-of ?PLANNING Planning) (result ?PLANNING ?PLAN)))) (=> (instance-of ?PLAN Plan) (exists (?PURP) (hasPurpose ?PLAN ?PURP))) (subclass-of Quantity Abstract) (documentation Quantity "Any specification of how many or how much of something there is. Accordingly, there are two subclasses of &%Quantity: &%Number (how many) and &%PhysicalQuantity (how much).") (subclass-of Attribute Abstract) (disjoint Attribute Quantity) (documentation Attribute "Qualities which we cannot or choose not to reify into subclasses of &%Object.") (subclass-of DirectionAttribute Attribute) (documentation DirectionAttribute "&%Attributes characterizing the orientation of an &%Object, e.g. &%Vertical versus &%Horizontal, the compass directions, etc.") (instance-of Vertical DirectionAttribute) (documentation Vertical "Attribute used to indicate that an &%Object is positioned height-wise with respect to another &%Object.") (instance-of Horizontal DirectionAttribute) (contraryProperty Horizontal Vertical) (documentation Horizontal "Attribute used to indicate that an &%Object is positioned width-wise with respect to another &%Object.") (subclass-of PhysicalState Attribute) (documentation PhysicalState "The physical state of an &%Object. There are three instances of this &%Class: &%Solid, &%Liquid, and &%Gas.") (instance-of Solid PhysicalState) (documentation Solid "An &%Object has the &%Attribute of &%Solid if it has a fixed shape and a fixed volume.") (instance-of Liquid PhysicalState) (documentation Liquid "An &%Object has the &%Attribute of &%Liquid if it has a fixed volume but not a fixed shape.") (instance-of Gas PhysicalState) (documentation Gas "An &%Object has the &%Attribute of &%Gas if it has neither a fixed volume nor a fixed shape.") (=> (and (instance-of ?STATE PhysicalState) (part-of ?PART ?OBJ) (holdsDuring ?TIME (attribute-of ?OBJ ?STATE))) (not (exists (?OTHERSTATE) (and (instance-of ?OTHERSTATE PhysicalState) (holdsDuring ?TIME (attribute-of ?PART ?OTHERSTATE)) (not (equal ?STATE ?OTHERSTATE)))))) (subclass-of ColorProperty Attribute) (documentation ColorProperty "The &%Class of &%Attributes relating to the color of &%Objects.") (subclass-of PrimaryColor ColorProperty) (disjointDecomposition PrimaryColor Red Blue Yellow) (documentation PrimaryColor "Colors which can be blended to form any color and which cannot be derived from any other colors.") (instance-of Red PrimaryColor) (documentation Red "The &%Attribute of redness.") (instance-of Blue PrimaryColor) (documentation Blue "The &%Attribute of being blue in color.") (instance-of Yellow PrimaryColor) (documentation Yellow "The &%Attribute of being yellow in color.") (instance-of Monochromatic ColorProperty) (documentation Monochromatic "An &%Object with this &%Attribute has the same color on every part of its surface.") (=> (and (attribute-of ?OBJ Monochromatic) (superficial-part-of ?PART ?OBJ) (attribute-of ?PART ?COLOR) (instance-of ?COLOR PrimaryColor)) (forall (?ELEMENT) (=> (superficial-part-of ?ELEMENT ?OBJ) (attribute-of ?ELEMENT ?COLOR)))) (instance-of Polychromatic ColorProperty) (contraryProperty Polychromatic Monochromatic) (documentation Polychromatic "An &%Object with this &%Attribute has different colors on different parts of its surface.") (=> (attribute-of ?OBJ Polychromatic) (exists (?PART1 ?PART2 ?COLOR1 ?COLOR2) (superficial-part-of ?PART1 ?OBJ) (superficial-part-of ?PART2 ?OBJ) (attribute-of ?PART1 ?COLOR1) (attribute-of ?PART2 ?COLOR2) (instance-of ?COLOR1 ColorProperty) (instance-of ?COLOR2 ColorProperty) (not (equal ?COLOR1 ?COLOR2)))) (subclass-of TemperatureProperty Attribute) (relatedInternalConcept TemperatureProperty ThermodynamicTemperatureMeasure) (documentation TemperatureProperty "&%Attributes which characterize the temperatures of &%Objects in a qualitative manner. For quantitative measures of temperatures, see &%ThermodynamicTemperatureMeasure.") (instance-of Cold TemperatureProperty) (documentation Cold "The &%Attribute of being cold.") (instance-of Hot TemperatureProperty) (contraryProperty Hot Cold) (documentation Hot "The &%Attribute of being hot.") (subclass-of ShapeProperty Attribute) (documentation ShapeProperty "Any &%Attribute that characterizes the shape of an &%Object.") (instance-of Elastic ShapeProperty) (documentation Elastic "The shape of an &%Object with this &%Attribute can be easily altered.") (instance-of Rigid ShapeProperty) (contraryProperty Rigid Elastic) (documentation Rigid "The shape of an &%Object with this &%Attribute cannot be easily altered.") (subclass-of TextureProperty Attribute) (documentation TextureProperty "Any &%Attribute that characterizes the texture of an &%Object.") (=> (and (instance-of ?ATTRIBUTE TextureProperty) (attribute-of ?OBJ ?ATTRIBUTE) (surface-of ?SURFACE ?OBJ)) (attribute-of ?SURFACE ?ATTRIBUTE)) (instance-of Smooth TextureProperty) (documentation Smooth "An &%Object with this &%Attribute has a smooth surface.") (instance-of Rough TextureProperty) (contraryProperty Smooth Rough) (documentation Rough "An &%Object with this &%Attribute has a rough surface.") (subclass-of BiologicalProperty Attribute) (documentation BiologicalProperty "&%Attributes that apply specifically to instances of &%Organic.") (=> (and (attribute-of ?ORG ?ATT) (instance-of ?ATT BiologicalProperty)) (instance-of ?ORG Organism)) (instance-of Living BiologicalProperty) (documentation Living "This &%Attribute applies to &%Organisms that are alive.") (=> (exists (?PROCESS) (and (instance-of ?ORGANISM Organism) (agent ?PROCESS ?ORGANISM))) (attribute-of ?ORGANISM Living)) (instance-of Dead BiologicalProperty) (contraryProperty Dead Living) (documentation Dead "This &%Attribute applies to &%Organisms that are not alive.") (instance-of AbstractionFn UnaryFunction) (nth-domain AbstractionFn 1 Class) (range AbstractionFn Attribute) (documentation AbstractionFn "A &%UnaryFunction that maps a &%Class into the instance of &%Attribute that specifies the condition(s) for membership in the &%Class.") (<=> (equal (AbstractionFn ?CLASS) ?ATTRIBUTE) (forall (?X) (<=> (instance-of ?X ?CLASS) (attribute-of ?X ?ATTRIBUTE)))) (instance-of ExtensionFn UnaryFunction) (nth-domain ExtensionFn 1 Attribute) (range ExtensionFn Class) (documentation ExtensionFn "A &%UnaryFunction that maps an &%Attribute into the &%Class whose condition for membership is the &%Attribute.") (<=> (equal (ExtensionFn ?ATTRIBUTE) ?CLASS) (equal (AttributeFn ?CLASS) ?ATTRIBUTE)) ;; END FILE ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; SET/CLASS THEORY ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; The following part of the ontology covers set-theoretic predicates ;; and functions. Most of the content here is taken from the kif-sets ;; ontology (available on the Ontolingua server). (subrelation-of subset subclass-of) (nth-domain subset 1 Set) (nth-domain subset 2 Set) (documentation subset "(subset ?SET1 ?SET2) is true just in case the &%elements of the &%Set ?SET1 are also &%elements of the &%Set ?SET2.") (=> (subset ?SUBSET ?SET) (forall (?ELEMENT) (=> (element ?ELEMENT ?SUBSET) (element ?ELEMENT ?SET)))) (instance-of element AsymmetricRelation) (subrelation-of element instance-of) (nth-domain element 1 Entity) (nth-domain element 2 Set) (documentation element "(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.") (=> (forall (?ELEMENT) (<=> (element ?ELEMENT ?SET1) (element ?ELEMENT ?SET2))) (equal ?SET1 ?SET2)) (instance-of UnionFn BinaryFunction) (nth-domain UnionFn 1 Class) (nth-domain UnionFn 2 Class) (range UnionFn Class) (documentation UnionFn "A &%BinaryFunction that maps two &%Classes to the union of these &%Classes. An object is an instance of the union of two &%Classes just in case it is an instance of either &%Class.") (=> (instance-of ?ENTITY (UnionFn ?CLASS1 ?CLASS2)) (or (instance-of ?ENTITY ?CLASS1) (instance-of ?ENTITY ?CLASS2))) (instance-of IntersectionFn BinaryFunction) (nth-domain IntersectionFn 1 Class) (nth-domain IntersectionFn 2 Class) (range IntersectionFn Class) (documentation IntersectionFn "A &%BinaryFunction that maps two %Classes to the intersection of these &%Classes. An object is an instance of the intersection of two &%Classes just in case it is an instance of both of those &%Classes.") (=> (instance-of ?ENTITY (IntersectionFn ?CLASS1 ?CLASS2)) (and (instance-of ?ENTITY ?CLASS1) (instance-of ?ENTITY ?CLASS2))) (instance-of RelativeComplementFn BinaryFunction) (nth-domain RelativeComplementFn 1 Class) (nth-domain RelativeComplementFn 2 Class) (range RelativeComplementFn Class) (documentation RelativeComplementFn "A &%BinaryFunction that maps two &%Classes to the difference between these &%Classes. 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.") (equal (RelativeComplementFn ?CLASS1 ?CLASS2) (IntersectionFn ?CLASS1 (ComplementFn ?CLASS2))) (instance-of ComplementFn UnaryFunction) (nth-domain ComplementFn 1 Class) (range ComplementFn Class) (documentation ComplementFn "The complement of a given &%Class C is the &%Class of all things that are not instances of C. In other words, an object is an instance of the complement of a &%Class C just in case it is not an instance of C.") (<=> (instance-of ?ENTITY (ComplementFn ?CLASS)) (not (instance-of ?ENTITY ?CLASS))) (instance-of GeneralizedUnionFn UnaryFunction) (nth-domain-subclass GeneralizedUnionFn 1 Class) (range GeneralizedUnionFn Class) (documentation GeneralizedUnionFn "A &%UnaryFunction that takes a &%Class of &%Classes as its single argument and returns a &%Class which is the merge of all of the &%Classes in the original &%Class, i.e. the &%Class containing just those instances which are instances of an instance of the original &%Class.") (<=> (instance-of ?ENTITY (GeneralizedUnionFn ?SUPERCLASS)) (exists (?CLASS) (and (instance-of ?CLASS ?SUPERCLASS) (instance-of ?ENTITY ?CLASS)))) (instance-of GeneralizedIntersectionFn UnaryFunction) (nth-domain-subclass GeneralizedIntersectionFn 1 Class) (range GeneralizedIntersectionFn Class) (documentation GeneralizedIntersectionFn "A &%UnaryFunction that takes a &%Class of &%Classes as its single argument and returns a &%Class which is the intersection of all of the &%Classes in the original &%Class, i.e. the &%Class containing just those instances which are instances of all instances of the original &%Class.") (<=> (instance-of ?ENTITY (GeneralizedIntersectionFn ?SUPERCLASS)) (forall (?CLASS) (=> (instance-of ?CLASS ?SUPERCLASS) (instance-of ?ENTITY ?CLASS)))) (instance-of NullSet Set) (documentation NullSet "The &%Set that contains no instances.") (equal NullSet (ComplementFn Entity)) (subclass-of PairwiseDisjointClass Class) (documentation PairwiseDisjointClass "A &%Class of &%Classes is a &%PairwiseDisjointClass just in case every instance of the &%Class is either &%equal to or &%disjoint from every other instance of the &%Class.") (=> (instance-of ?SUPERCLASS PairwiseDisjointClass) (forall (?CLASS1 ?CLASS2) (=> (and (instance-of ?CLASS1 ?SUPERCLASS) (instance-of ?CLASS2 ?SUPERCLASS)) (or (equal ?CLASS1 ?CLASS2) (disjoint ?CLASS1 ?CLASS2))))) (subclass-of MutuallyDisjointClass Class) (documentation MutuallyDisjointClass "A &%Class of &%Classes is a &%MutuallyDisjointClass just in case there exists no instance of an instance of the original &%Class which is an instance of all of the instances of the original &%Class.") (=> (instance-of ?CLASS MutuallyDisjointClass) (equal (GeneralizedIntersectionFn ?CLASS) NullSet)) ;; END FILE ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; RELATION TYPES ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; The following part of the ontology covers the various classes under ;; 'Relation'. Most of the content here is taken from frame-ontology, ;; abstract-algebra, kif-relations, and kif-extensions (ontologies ;; available on the Ontolingua server). (subclass-of Predicate Relation) (documentation Predicate "A &%Predicate is a sentence-forming &%Relation that represents a relationship among objects in the universe of discourse. Each tuple in the relationship is a finite, ordered sequence of objects. The fact that a particular tuple is an element of a &%Predicate is denoted by ( arg_1 arg_2 .. arg_n), where the arg_i are the objects in the tuple. In the case of binary relations, the fact can be read as `arg_1 is arg_2' or `a of arg_1 is arg_2'.") (subclass-of Function Relation) (documentation Function "A &%Function is a term-forming &%Relation that maps from a domain to a range and that associates a domain element with exactly one range element. The elements of the domain are tuples. The range is a &%Class, and each element of the range is an instance of the &%Class.") (subclass-of UnaryFunction Function) (documentation UnaryFunction "The &%Class of &%Functions that require a single argument.") (=> (instance-of ?FUNCTION UnaryFunction) (valence ?FUNCTION 1)) (=> (and (instance-of ?FUNCTION UnaryFunction) (equal (AssignmentFn ?FUNCTION ?ARG) ?VALUE1) (equal (AssignmentFn ?FUNCTION ?ARG) ?VALUE2)) (equal ?VALUE1 ?VALUE2)) (subclass-of BinaryFunction Function) (documentation BinaryFunction "The &%Class of &%Functions that require two arguments.") (=> (instance-of ?FUNCTION BinaryFunction) (valence ?FUNCTION 2)) (=> (and (instance-of ?FUNCTION BinaryFunction) (equal (AssignmentFn ?FUNCTION ?ARG1 ?ARG2) ?VALUE1) (equal (AssignmentFn ?FUNCTION ?ARG1 ?ARG2) ?VALUE2)) (equal ?VALUE1 ?VALUE2)) (subclass-of TernaryFunction Function) (documentation TernaryFunction "The &%Class of &%Functions that require three arguments.") (=> (instance-of ?FUNCTION TernaryFunction) (valence ?FUNCTION 3)) (=> (and (instance-of ?FUNCTION TernaryFunction) (equal (AssignmentFn ?FUNCTION ?ARG1 ?ARG2 ?ARG3) ?VALUE1) (equal (AssignmentFn ?FUNCTION ?ARG1 ?ARG2 ?ARG3) ?VALUE2)) (equal ?VALUE1 ?VALUE2)) (subclass-of VariableArityFunction Function) (documentation VariableArityFunction "The &%Class of &%Functions that do not have a fixed number of arguments.") (=> (instance-of ?FUNCTION VariableArityFunction) (not (exists (?INT) (valence ?FUNCTION ?INT)))) (subclass-of ContinuousFunction Function) (documentation ContinuousFunction "&%Functions which are continuous. This concept is taken as primitive until representations for limits are devised.") (subclass-of SententialOperator Predicate) (documentation SententialOperator "This &%Class currently comprises all of the logical operators (viz. 'and', 'or', 'not', '=>', and '<=>') and the modal operators (viz. 'possible' and 'necessary').") (subclass-of BinaryRelation Predicate) (documentation BinaryRelation "A &%Predicate relating two items. A &%BinaryRelation maps instances of a &%Class to instances of another &%Class. Its valence is 2. &%BinaryRelations are represented as slots in frame systems.") (=> (instance-of ?REL BinaryRelation) (valence ?REL 2)) (subclass-of TernaryRelation Predicate) (documentation TernaryRelation "The &%Class of &%Predicates that require three arguments.") (=> (instance-of ?REL TernaryRelation) (valence ?REL 3)) (subclass-of QuaternaryRelation Predicate) (documentation QuaternaryRelation "The &%Class of &%Predicates that require four arguments.") (=> (instance-of ?REL QuaternaryRelation) (valence ?REL 4)) (subclass-of QuintaryRelation Predicate) (documentation QuintaryRelation "The &%Class of &%Predicates that require five arguments.") (=> (instance-of ?REL QuintaryRelation) (valence ?REL 5)) (subclass-of VariableArityRelation Predicate) (documentation VariableArityRelation "The &%Class of &%Predicates that do not have a fixed number of arguments.") (=> (instance-of ?REL VariableArityRelation) (not (exists (?INT) (valence ?REL ?INT)))) (subclass-of CaseRole AsymmetricRelation) (documentation CaseRole "The &%Class of &%Predicates relating the spatially distinguished parts of a &%Process. &%CaseRoles include, for example, the &%agent, &%patient or &%destination of an action, the flammable substance in a burning process, or the water that falls in rain.") (=> (and (instance-of ?REL CaseRole) (holds ?REL ?PROCESS ?OBJ)) (exists (?TIME) (overlapsSpatially (WhereFn ?PROCESS ?TIME) ?OBJ))) (subclass-of ProbabilityRelation Relation) (documentation ProbabilityRelation "The &%Class of &%Relations that permit assessment of the probability of an event or situation.") (subclass-of SpatialRelation Relation) (documentation SpatialRelation "The &%Class of &%Relations that are spatial in a wide sense. This &%Class includes mereological relations, topological relations, and positional relations.") (=> (and (instance-of ?REL SpatialRelation) (holds ?REL ?OBJ1 ?OBJ2)) (overlapsTemporally (WhenFn ?OBJ1) (WhenFn ?OBJ2))) (subclass-of TemporalRelation Relation) (documentation TemporalRelation "The &%Class of temporal &%Relations. This &%Class includes notions of (temporal) topology of intervals, (temporal) schemata, and (temporal) extension.") (subclass-of IntentionalRelation AsymmetricRelation) (documentation IntentionalRelation "The &%Class of &%Relations between an &%Agent and an &%Entity, where the &%Relation requires that the &%Agent have awareness of the &%Entity.") (subclass-of PropositionalAttitude IntentionalRelation) (documentation PropositionalAttitude "The &%Class of &%IntentionalRelations where the &%Agent has awareness of a &%Proposition.") (subclass-of ObjectAttitude IntentionalRelation) (disjoint ObjectAttitude PropositionalAttitude) (documentation ObjectAttitude "The &%Class of &%IntentionalRelations where the &%Agent has awareness of an instance of &%Physical.") (instance-of AssignmentFn VariableArityFunction) (nth-domain AssignmentFn 1 Function) (range AssignmentFn Entity) (documentation AssignmentFn "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.") (instance-of holds VariableArityRelation) (nth-domain holds 1 Predicate) (documentation holds "(holds P N1 ... NK) is true just in case the tuple of objects denoted by N1,..., NK is an element of the &%Predicate P.") (subclass-of RelationExtendedToQuantities Relation) (documentation RelationExtendedToQuantities "A &%RelationExtendedToQuantities is a &%Relation that, when it is true on a sequence of arguments that are &%RealNumbers, it is also true on a sequence of &%ConstantQuantites with those magnitudes in some unit of measure. For example, the &%lessThan relation is extended to quantities. This means that for all pairs of quantities ?QUANTITY1 and ?QUANTITY2, (lessThan ?QUANTITY1 ?QUANTITY2) if and only if, for some ?NUMBER1, ?NUMBER2, and ?UNIT, ?QUANTITY1 = (MeasureFn ?NUMBER1 ?UNIT), ?QUANTITY2 = (MeasureFn ?NUMBER2 ?UNIT), and (lessThan ?NUMBER1 ?NUMBER2), for all units ?UNIT on which ?QUANTITY1 and ?QUANTITY2 can be measured. Note that, when a &%RelationExtendedToQuantities is extended from &%RealNumbers to &%ConstantQuantities, the &%ConstantQuantities must be measured along the same physical dimension.") (=> (and (instance-of ?FUNCTION RelationExtendedToQuantities) (instance-of ?FUNCTION BinaryFunction) (instance-of ?NUMBER1 RealNumber) (instance-of ?NUMBER2 RealNumber) (equal (AssignmentFn ?FUNCTION ?NUMBER1 ?NUMBER2) ?VALUE)) (forall (?UNIT) (=> (instance-of ?UNIT UnitOfMeasure) (equal (AssignmentFn ?FUNCTION (MeasureFn ?NUMBER1 ?UNIT) (MeasureFn ?NUMBER2 ?UNIT)) (MeasureFn ?VALUE ?UNIT))))) (=> (and (instance-of ?PRED RelationExtendedToQuantities) (instance-of ?PRED BinaryRelation) (instance-of ?NUMBER1 RealNumber) (instance-of ?NUMBER2 RealNumber) (holds ?PRED ?NUMBER1 ?NUMBER2)) (forall (?UNIT) (=> (instance-of ?UNIT UnitOfMeasure) (holds ?PRED (MeasureFn ?NUMBER1 ?UNIT) (MeasureFn ?NUMBER2 ?UNIT))))) (instance-of closedOn AsymmetricRelation) (nth-domain closedOn 1 BinaryFunction) (range closedOn Class) (documentation closedOn "A &%BinaryFunction is closed on a &%Class if it is defined for all pairs of objects that are instances of the &%Class and its value for all such pairs is an instance of the &%Class.") (=> (closedOn ?FUNCTION ?CLASS) (forall (?INST1 ?INST2) (=> (and (instance-of ?INST1 ?CLASS) (instance-of ?INST2 ?CLASS)) (instance-of (AssignmentFn ?FUNCTION ?INST1 ?INST2) ?CLASS)))) (instance-of reflexiveOn AsymmetricRelation) (nth-domain reflexiveOn 1 BinaryRelation) (nth-domain reflexiveOn 2 Class) (documentation reflexiveOn "A &%BinaryRelation is reflexive on a &%Class only if every instance of the &%Class bears the relation to itself.") (=> (reflexiveOn ?RELATION ?CLASS) (forall (?INST) (=> (instance-of ?INST ?CLASS) (holds ?RELATION ?INST ?INST)))) (instance-of irreflexiveOn AsymmetricRelation) (nth-domain irreflexiveOn 1 BinaryRelation) (nth-domain irreflexiveOn 2 Class) (documentation irreflexiveOn "A &%BinaryRelation is irreflexive on a &%Class only if no instance of the &%Class bears the relation to itself.") (=> (irreflexiveOn ?RELATION ?CLASS) (forall (?INST) (=> (instance-of ?INST ?CLASS) (not (holds ?RELATION ?INST ?INST))))) (instance-of partialOrderingOn AsymmetricRelation) (nth-domain partialOrderingOn 1 BinaryRelation) (nth-domain partialOrderingOn 2 Class) (documentation partialOrderingOn "A &%BinaryRelation is a partial ordering on a &%Class only if the relation is &%reflexiveOn the &%Class, and it is both an &%AsymmetricRelation, and a &%TransitiveRelation.") (=> (partialOrderingOn ?RELATION ?CLASS) (and (reflexiveOn ?RELATION ?CLASS) (instance-of ?RELATION TransitiveRelation) (instance-of ?RELATION AntisymmetricRelation))) (instance-of totalOrderingOn AsymmetricRelation) (nth-domain totalOrderingOn 1 BinaryRelation) (nth-domain totalOrderingOn 2 Class) (documentation totalOrderingOn "A &%BinaryRelation ?REL is a total ordering on a &%Class only if it is a partial ordering for which either (?REL ?X ?Y) or (?REL ?Y ?X) for every ?X and ?Y in the &%Class.") (<=> (totalOrderingOn ?RELATION ?CLASS) (and (partialOrderingOn ?RELATION ?CLASS) (trichotomizingOn ?RELATION ?CLASS))) (instance-of trichotomizingOn AsymmetricRelation) (nth-domain trichotomizingOn 1 BinaryRelation) (nth-domain trichotomizingOn 2 Class) (documentation trichotomizingOn "A &%BinaryRelation ?REL is trichotomizing on a &%Class only if, for all instances ?INST1 and ?INST2 of the &%Class, at least one of the following holds: (?REL ?INST1 ?INST2), (?REL ?INST2 ?INST1) or (equal ?INST1 ?INST2).") (=> (trichotomizingOn ?RELATION ?CLASS) (forall (?INST1 ?INST2) (=> (and (instance-of ?INST1 ?CLASS) (instance-of ?INST2 ?CLASS)) (or (holds ?RELATION ?INST1 ?INST2) (holds ?RELATION ?INST2 ?INST1) (equal ?INST1 ?INST2))))) (instance-of equivalenceRelationOn AsymmetricRelation) (nth-domain equivalenceRelationOn 1 BinaryRelation) (nth-domain equivalenceRelation 2 Class) (documentation equivalenceRelation "A &%BinaryRelation is an &%equivalenceRelationOn a &%Class only if the relation is &%reflexiveOn the &%Class and it is both a &%TransitiveRelation and a &%SymmetricRelation.") (=> (equivalenceRelationOn ?RELATION ?CLASS) (and (instance-of ?RELATION TransitiveRelation) (instance-of ?RELATION SymmetricRelation) (reflexiveOn ?RELATION ?CLASS))) (subclass-of AssociativeFunction BinaryFunction) (documentation AssociativeFunction "A &%BinaryFunction is associative if bracketing has no effect on the value returned by the &%Function. More precisely, a &%Function ?FUNCTION is associative just in case (?FUNCTION ?INST1 (?FUNCTION ?INST2 ?INST3)) is equal to (?FUNCTION (?FUNCTION ?INST1 ?INST2) ?INST3), for all ?INST1, ?INST2, and ?INST3.") (=> (instance-of ?FUNCTION AssociativeFunction) (forall (?INST1 ?INST2 ?INST3) (=> (and (instance-of ?INST1 (DomainFn ?FUNCTION)) (instance-of ?INST2 (DomainFn ?FUNCTION)) (instance-of ?INST3 (DomainFn ?FUNCTION))) (equal (AssignmentFn ?FUNCTION ?INST1 (AssignmentFn ?FUNCTION ?INST1 ?INST2)) (AssignmentFn ?FUNCTION (AssignmentFn ?FUNCTION ?INST1 ?INST2) ?INST3))))) (subclass-of CommutativeFunction BinaryFunction) (documentation CommutativeFunction "A &%BinaryFunction is commutative if the ordering of the arguments of the function has no effect on the value returned by the function. More precisely, a function ?FUNCTION is commutative just in case (?FUNCTION ?X ?Y) is equal to (?FUNCTION ?Y ?X), for all ?X and ?Y.") (=> (instance-of ?FUNCTION CommutativeFunction) (forall (?INST1 ?INST2) (=> (and (instance-of ?INST1 (DomainFn ?FUNCTION)) (instance-of ?INST2 (DomainFn ?FUNCTION))) (equal (AssignmentFn ?FUNCTION ?INST1 ?INST2) (AssignmentFn ?FUNCTION ?INST2 ?INST1))))) (instance-of distributes BinaryRelation) (nth-domain distributes 1 BinaryFunction) (nth-domain distributes 2 BinaryFunction) (documentation distributes "A &%BinaryFunction ?FUNCTION1 is distributive over another &%BinaryFunction ?FUNCTION2 just in case (?FUNCTION1 ?X (?FUNCTION2 ?Y ?Z)) is equal to (?FUNCTION2 (?FUNCTION1 ?X ?Y) (?FUNCTION1 ?X ?Z)), for all ?X, ?Y, and ?Z.") (=> (distributes ?FUNCTION1 ?FUNCTION2) (forall (?INST1 ?INST2 ?INST3) (=> (and (instance-of ?INST1 (DomainFn ?FUNCTION1)) (instance-of ?INST2 (DomainFn ?FUNCTION1)) (instance-of ?INST3 (DomainFn ?FUNCTION1)) (instance-of ?INST1 (DomainFn ?FUNCTION2)) (instance-of ?INST2 (DomainFn ?FUNCTION2)) (instance-of ?INST3 (DomainFn ?FUNCTION2))) (equal (AssignmentFn ?FUNCTION1 ?INST1 (AssignmentFn ?FUNCTION2 ?INST2 ?INST3)) (AssignmentFn ?FUNCTION2 (AssignmentFn ?FUNCTION1 ?INST1 ?INST2) (AssignmentFn ?FUNCTION1 ?INST1 ?INST3)))))) (instance-of identityElement AsymmetricRelation) (nth-domain identityElement 1 BinaryFunction) (nth-domain identityElement 2 Entity) (documentation identityElement "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.") (=> (identityElement ?FUNCTION ?ID) (forall (?INST) (=> (instance-of ?INST (DomainFn ?FUNCTION)) (equal (AssignmentFn ?FUNCTION ?ID ?INST) ?INST)))) (identityElement MultiplicationFn 1) (identityElement AdditionFn 0) (identityElement SubtractionFn 0) (identityElement DivisionFn 1) (subclass-of ReflexiveRelation BinaryRelation) (documentation ReflexiveRelation "&%Relation ?REL is reflexive if (?REL ?X ?X) for all ?X.") (=> (instance-of ?REL ReflexiveRelation) (forall (?INST) (holds ?REL ?INST ?INST))) (subclass-of IrreflexiveRelation BinaryRelation) (documentation IrreflexiveRelation "&%Relation ?REL is irreflexive if (?REL ?INST ?INST) holds for no value of ?INST.") (=> (instance-of ?REL IrreflexiveRelation) (forall (?INST) (not (holds ?REL ?INST ?INST)))) (subclass-of SymmetricRelation BinaryRelation) (documentation SymmetricRelation "A &%BinaryRelation ?REL is symmetric just in case (?REL ?INST1 ?INST2) imples (?REL ?INST2 ?INST1), for all ?INST1 and ?INST2.") (=> (instance-of ?REL SymmetricRelation) (forall (?INST1 ?INST2) (=> (holds ?REL ?INST1 ?INST2) (holds ?REL ?INST2 ?INST2)))) (subclass-of AsymmetricRelation IrreflexiveRelation) (subclass-of AsymmetricRelation AntisymmetricRelation) (documentation AsymmetricRelation "A &%BinaryRelation is asymmetric only if it is both an &%AntisymmetricRelation and an &%IrreflexiveRelation.") (subclass-of AntisymmetricRelation BinaryRelation) (documentation AntisymmetricRelation "&%BinaryRelation ?REL is an &%AntisymmetricRelation if for distinct ?INST1 and ?INST2, (?REL ?INST1 ?INST2) implies not (?REL ?INST2 ?INST1). In other words, for all ?INST1 and ?INST2, (?REL ?INST1 ?INST2) and (?REL ?INST2 ?INST1) imply that ?INST1 and ?INST2 are identical. Note that it is possible for an &%AntisymmetricRelation to be a &%ReflexiveRelation.") (=> (instance-of ?REL AntisymmetricRelation) (forall (?INST1 ?INST2) (=> (and (holds ?REL ?INST1 ?INST2) (holds ?REL ?INST2 ?INST1)) (equal ?INST1 ?INST2)))) (subclass-of TrichotomizingRelation BinaryRelation) (documentation TrichotomizingRelation "A &%BinaryRelation ?REL is a &%TrichotomizingRelation just in case all ordered pairs consisting of distinct individuals are elements of ?REL.") (=> (instance-of ?REL TrichotomizingRelation) (forall (?INST1 ?INST2) (or (holds ?REL ?INST1 ?INST2) (equal ?INST1 ?INST2) (holds ?REL ?INST2 ?INST1)))) (subclass-of TransitiveRelation BinaryRelation) (documentation TransitiveRelation "A &%BinaryRelation ?REL is transitive if (?REL ?INST1 ?INST2) and (?REL ?INST2 ?INST3) imply (?REL ?INST1 ?INST3), for all ?INST1, ?INST2, and ?INST3.") (=> (instance-of ?REL TransitiveRelation) (forall (?INST1 ?INST2 ?INST3) (=> (and (holds ?REL ?INST1 ?INST2) (holds ?REL ?INST2 ?INST3)) (holds ?REL ?INST1 ?INST3)))) (subclass-of IntransitiveRelation BinaryRelation) (documentation IntransitiveRelation "A &%BinaryRelation ?REL is intransitive only if (?REL ?INST1 ?INST2) and (?REL ?INST2 ?INST3) imply not (?REL ?INST1 ?INST3), for all ?INST1, ?INST2, and ?INST3.") (=> (instance-of ?REL IntransitiveRelation) (forall (?INST1 ?INST2 ?INST3) (=> (and (holds ?REL ?INST1 ?INST2) (holds ?REL ?INST2 ?INST3)) (not (holds ?REL ?INST1 ?INST3))))) (subclass-of PartialOrderingRelation TransitiveRelation) (subclass-of PartialOrderingRelation AntisymmetricRelation) (subclass-of PartialOrderingRelation ReflexiveRelation) (documentation PartialOrderingRelation "A &%BinaryRelation is a partial ordering if it is a &%ReflexiveRelation, an &%AntisymmetricRelation, and a &%TransitiveRelation.") (subclass-of TotalOrderingRelation PartialOrderingRelation) (subclass-of TotalOrderingRelation TrichotomizingRelation) (documentation TotalOrderingRelation "A &%BinaryRelation is a &%TotalOrderingRelation if it is a &%PartialOrderingRelation and a &%TrichotomizingRelation.") (=> (instance-of ?REL TotalOrderingRelation) (forall (?INST1 ?INST2) (or (holds ?REL ?INST1 ?INST2) (holds ?REL ?INST2 ?INST1)))) (subclass-of EquivalenceRelation TransitiveRelation) (subclass-of EquivalenceRelation SymmetricRelation) (subclass-of EquivalenceRelation ReflexiveRelation) (documentation EquivalenceRelation "A &%BinaryRelation is an equivalence relation if it is a &%ReflexiveRelation, a &%SymmetricRelation, and a &%TransitiveRelation.") (instance-of inverse SymmetricRelation) (nth-domain inverse 1 (KappaFn ?X (or (instance-of ?X BinaryRelation) (instance-of ?X UnaryFunction)))) (nth-domain inverse 2 (KappaFn ?X (or (instance-of ?X BinaryRelation) (instance-of ?X UnaryFunction)))) (documentation inverse "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.") (=> (inverse ?REL1 ?REL2) (forall (?INST1 ?INST2) (<=> (holds ?REL1 ?INST1 ?INST2) (holds ?REL2 ?INST2 ?INST1)))) (instance-of cardinality AsymmetricRelation) (nth-domain cardinality 1 Class) (nth-domain cardinality 2 NonnegativeInteger) (documentation cardinality "(cardinality ?CLASS ?NUMBER) means that the number of instances in ?CLASS is ?NUMBER.") (=> (exists (?INST) (instance-of ?INST ?CLASS)) (exists (?NUMBER) (and (cardinality ?CLASS ?NUMBER) (greaterThan ?NUMBER 0)))) (instance-of IdentityFn UnaryFunction) (nth-domain IdentityFn 1 Entity) (range IdentityFn Entity) (documentation IdentityFn "The value of the identity function is just its argument.") (equal (IdentityFn ?INST) ?INST) (instance-of DomainFn UnaryFunction) (nth-domain DomainFn 1 BinaryRelation) (range DomainFn Class) (documentation DomainFn "The domain of a &%BinaryRelation ?REL is the &%Class of all things that bear ?REL to something.") (<=> (instance-of ?INST1 (DomainFn ?REL)) (exists (?INST2) (holds ?REL ?INST1 ?INST2))) (instance-of RangeFn UnaryFunction) (nth-domain RangeFn 1 BinaryRelation) (range RangeFn Class) (documentation RangeFn "The range of a &%BinaryRelation ?REL is the &%Class of all things such that something bears ?REL to them.") (<=> (instance-of ?INST1 (RangeFn ?REL)) (exists (?INST2) (holds ?REL ?INST2 ?INST1))) ;; END FILE ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DEFINITIONS OF BASIC RELATIONS ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (subrelation-of agent effector-of) (nth-domain agent 1 Process) (nth-domain agent 2 Agent) (documentation agent "(agent ?ACTION ?AGENT) means that the &%Agent ?AGENT voluntarily initiates ?ACTION. For example, Eve is an &%agent in the following proposition: Eve bit an apple.") (subrelation-of attribute-of property-of) (nth-domain attribute-of 1 Object) (nth-domain attribute-of 2 Attribute) (documentation attribute-of "(attribute-of ?OBJECT ?PROPERTY) means that ?PROPERTY is a &%Attribute of ?OBJECT. For example, (attribute-of MyLittleRedWagon Red).") (=> (attribute-of ?OBJ ?ATTR) (not (manner-of ?OBJ ?ATTR))) (instance-of authors AsymmetricRelation) (nth-domain authors 1 Agent) (nth-domain authors 2 Text) (documentation authors "(&%authors ?AGENT ?TEXT) means that ?AGENT is creatively responsible for ?TEXT. For example, Agatha Christie is author of 'Murder on the Orient Express'.") (=> (authors ?AGENT ?TEXT) (exists (?PROCESS) (and (agent ?PROCESS ?AGENT) (result ?PROCESS ?TEXT)))) (instance-of believes PropositionalAttitude) (subrelation-of believes inScopeOfInterest) (nth-domain believes 1 Agent) (nth-domain believes 2 KIF-Formula) (documentation believes "The epistemic predicate of belief. (&%believes ?AGENT ?FORMULA) means that ?AGENT believes the proposition expressed by ?FORMULA.") (instance-of causes AsymmetricRelation) (nth-domain causes 1 KIF-Formula) (nth-domain causes 2 KIF-Formula) (documentation causes "The causation relation between situations or propositions. (&%causes ?FORMULA1 ?FORMULA2) means that the state of affairs expressed by ?FORMULA1 brings about the state of affairs expressed by ?FORMULA2.") (subrelation-of component-of part-of) (nth-domain component-of 1 CorpuscularObject) (nth-domain component-of 2 CorpuscularObject) (documentation component-of "A specialized common sense notion of part for heterogeneous parts of complexes. (&%component-of ?COMPONENT ?WHOLE) means that ?COMPONENT is a component of ?WHOLE. Examples of component include the doors and walls of a house, the states or provinces of a country, or the limbs and organs of an animal. Compare &%constituent-material-of and &%piece-of, which are also subrelations of &%part-of.") (subrelation-of constituent-material-of part-of) (nth-domain constituent-material-of 1 Substance) (nth-domain constituent-material-of 2 CorpuscularObject) (documentation constituent-material-of "(&%constituent-material-of ?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 would be a &%constituent-material-of my computer monitor. Compare 'component-of' and 'piece-of', which are also subrelations of &%part-of.") (instance-of containsInformation AsymmetricRelation) (subrelation-of containsInformation represents) (nth-domain containsInformation 1 ContentBearingObject) (nth-domain containsInformation 2 Proposition) (documentation containsInformation "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.") (instance-of copy-of EquivalenceRelation) (nth-domain copy-of 1 Object) (nth-domain copy-of 2 Object) (documentation copy-of "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.") (=> (copy-of ?OBJ1 ?OBJ2) (forall (?ATTR) (=> (attribute-of ?OBJ1 ?ATTR) (attribute-of ?OBJ2 ?ATTR)))) (instance-of destination CaseRole) (nth-domain destination 1 Process) (nth-domain destination 2 Entity) (documentation destination "(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.") (instance-of developmentalForm AsymmetricRelation) (nth-domain developmentalForm 1 OrganicObject) (nth-domain developmentalForm 2 OrganicObject) (documentation developmentalForm "(&%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.") (instance-of duration CaseRole) (nth-domain duration 1 Process) (nth-domain duration 2 TimeMeasure-Duration) (documentation duration "(&%duration ?PROCESS ?TIME) means that the duration of the Process ?PROCESS is ?TIME. For example, five hours is the &%duration in the following proposition: The truck was serviced for five hours.") (subrelation-of effector-of causes) (nth-domain effector-of 1 Process) (nth-domain effector-of 2 Object) (documentation effector-of "(&%effector-of ?ACTION ?ENTITY) means that ?ENTITY is an active determinant, either animate or inanimate, of the &%Process ?ACTION, with or without voluntary intention. For example, water is the &%effector of erosion in the following proposition: the water eroded the coastline.") (=> (instance-of ?PROCESS Process) (exists (?CAUSE) (effector-of ?PROCESS ?CAUSE))) (instance-of employs AsymmetricRelation) (nth-domain employs 1 Organization) (nth-domain employs 2 Person) (documentation employs "(&%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.") (=> (employs ?ORG ?PERSON) (member ?PERSON ?ORG)) (instance-of equal EquivalenceRelation) (instance-of equal RelationExtendedToQuantities) (nth-domain equal 1 Entity) (nth-domain equal 2 Entity) (documentation equal "(equal ?ENTITY1 ?ENTITY2) is true just in case ?ENTITY1 is identical with ?ENTITY2.") (instance-of exists-at TemporalRelation) (instance-of exists-at AsymmetricRelation) (nth-domain exists-at 1 Physical) (nth-domain exists-at 2 TimePoint) (documentation exists-at "This relation holds between an entity and a timepoint just in case the temporal lifespan of the former includes the latter. The constants located-at and exists-at are the basic spatial and temporal predicates, respectively.") (<=> (exists-at ?P ?T) (betweenEq-temporal (BeginFn (WhenFn ?P)) ?T (EndFn (WhenFn ?P)))) (instance-of experiencer CaseRole) (nth-domain experiencer 1 Process) (nth-domain experiencer 2 Agent) (documentation experiencer "(&%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 &%effector-of, does not entail a causal relation between its arguments.") (instance-of hasCapability AsymmetricRelation) (nth-domain-subclass hasCapability 1 Process) (nth-domain hasCapability 2 Agent) (documentation hasCapability "(&%hasCapability ?PROCESS ?AGENT) means that ?AGENT has the ability to be an &%agent of &%Processes of type ?PROCESS.") (=> (hasCapability ?PROCESS ?AGENT) (possible (exists (?INST) (and (instance-of ?INST ?PROCESS) (agent ?INST ?AGENT))))) (instance-of exploits AsymmetricRelation) (nth-domain exploits 1 Object) (nth-domain exploits 2 Agent) (documentation exploits "(&%exploits ?OBJ ?AGENT) means that ?OBJ is used by ?AGENT as a &%resource in an unspecified instance of &%Process. This &%Predicate, as its corresponding axiom indicates, is a composition of the relations &%agent and &%resource.") (=> (exploits ?OBJ ?AGENT) (exists (?PROCESS) (and (agent ?PROCESS ?AGENT) (resource ?PROCESS ?OBJ)))) (instance-of hasPurpose AsymmetricRelation) (nth-domain hasPurpose 1 Physical) (nth-domain hasPurpose 2 KIF-Formula) (documentation hasPurpose "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.") (instance-of hasPurposeForAgent TernaryRelation) (nth-domain hasPurposeForAgent 1 Physical) (nth-domain hasPurposeForAgent 2 KIF-Formula) (nth-domain hasPurposeForAgent 3 Agent) (documentation hasPurposeForAgent "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.") (=> (hasPurpose ?THING ?PURPOSE) (exists (?AGENT) (hasPurposeForAgent ?THING ?PURPOSE ?AGENT))) (instance-of hasSkill AsymmetricRelation) (subrelation-of hasSkill hasCapability) (nth-domain-subclass hasSkill 1 Process) (nth-domain hasSkill 2 Human) (documentation hasSkill "The same as the &%hasCapability &%Predicate with the additional restrictions that the &%Agent be a &%Human and that the ability be practised/demonstrated to some measurable degree.") (instance-of holdsAuthority AsymmetricRelation) (nth-domain-subclass holdsAuthority 1 Process) (nth-domain holdsAuthority 2 Agent) (documentation holdsAuthority "Expresses a relationship between a subclass of &%Process and an &%Agent whereby the &%Agent has the right (conferred by an &%Organization) to perform instances of the &%Process type specified, i.e. to be an &%agent of an instance of the &%Process type.") (=> (holdsAuthority ?PROCESS ?AGENT) (hasCapability ?PROCESS ?AGENT)) (instance-of inScopeOfInterest BinaryRelation) (nth-domain inScopeOfInterest 1 Agent) (nth-domain inScopeOfInterest 2 Entity) (documentation inScopeOfInterest "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.") (subclass-of instrument patient) (nth-domain instrument 1 Process) (nth-domain instrument 2 Object) (documentation instrument "(instrument ?EVENT ?TOOL) means that ?TOOL is used by an agent in bringing about ?EVENT and that ?TOOL is not changed by ?EVENT. For example, the key is an &%instrument in the following proposition: The key opened the door. Note that &%instrument and &%resource cannot be satisfied by the same ordered pair.") (instance-of knows PropositionalAttitude) (subrelation-of knows inScopeOfInterest) (nth-domain knows 1 Agent) (nth-domain knows 2 KIF-Formula) (documentation knows "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.") (=> (knows ?AGENT ?FORMULA) (believes ?AGENT ?FORMULA)) (instance-of lives-in AsymmetricRelation) (nth-domain lives-in 1 Organism) (nth-domain lives-in 2 Object) (documentation lives-in "A very basic notion of living within something else. (&%lives-in ?ORGANISM ?OBJECT) means that ?OBJECT is the residence, nest, home, etc. of ?ORGANISM.") (instance-of located-at SpatialRelation) (instance-of located-at PartialOrderingRelation) (subrelation-of located-at partly-located-at) (nth-domain located-at 1 Physical) (nth-domain located-at 2 Object) (relatedInternalConcept located-at exists-at) (documentation located-at "A very general predicate. (&%located-at ?X ?Y) means that ?X is situated at ?Y, in some sense. The constants located-at and exists-at are spatial and temporal predicates, respectively.") (=> (and (holdsDuring ?INTERVAL (located-at ?OBJ ?PLACE)) (temporal-part-of ?POINT ?INTERVAL)) (exists-at ?OBJ ?POINT)) (=> (located-at ?OBJ ?REGION) (forall (?SUBOBJ) (=> (part-of ?SUBOBJ ?OBJ) (located-at ?SUBOBJ ?REGION)))) (instance-of parent AsymmetricRelation) (nth-domain parent 1 Organism) (nth-domain parent 2 Organism) (documentation parent "The general relationship of parenthood. (&%parent ?PARENT ?CHILD) means that ?PARENT is a biological parent of ?CHILD.") (=> (parent ?PARENT ?CHILD) (before (BeginFn (WhenFn ?PARENT)) (BeginFn (WhenFn ?CHILD)))) (=> (and (parent ?PARENT ?CHILD) (subclass-of ?CLASS Organism) (instance-of ?PARENT ?CLASS)) (instance-of ?CHILD ?CLASS)) (=> (parent ?PARENT ?CHILD) (or (mother ?PARENT ?CHILD) (father ?PARENT ?CHILD))) (subrelation-of mother parent) (nth-domain mother 1 Female) (singleValued mother 1) (documentation parent "The general relationship of motherhood. (&%mother ?MOTHER ?CHILD) means that ?MOTHER is the biological mother of ?CHILD.") (subrelation-of father parent) (nth-domain father 1 Male) (singleValued father 1) (documentation parent "The general relationship of fatherhood. (&%father ?FATHER ?CHILD) means that ?FATHER is the biological father of ?CHILD.") (instance-of partly-located-at ReflexiveRelation) (instance-of partly-located-at BinaryRelation) (nth-domain partly-located-at 1 Object) (nth-domain partly-located-at 2 Region) (documentation partly-located-at "The predicate of partial localization. For example, Istanbul is partly located in Asia. Note that this is the most basic localization relation: &%located-at and &%exactly-located-at are both subrelations of &%partly-located-at.") (=> (partly-located-at ?OBJ ?REGION) (exists (?SUBOBJ) (and (part-of ?SUBOBJ ?OBJ) (exactly-located-at ?SUBOBJ ?REGION)))) (=> (partly-located-at ?OBJ ?REGION) (overlapsSpatially ?OBJ ?REGION)) (subrelation-of exactly-located-at located-at) (documentation exactly-located-at "The actual, minimal location of an Object. This is a subrelation of the more general Predicate &%located-at.") (=> (exactly-located-at ?OBJ ?REGION) (not (exists (?OTHEROBJ) (and (exactly-located-at ?OTHEROBJ ?REGION) (not (equal ?OTHEROBJ ?OBJ)))))) (instance-of WhereFn SpatialRelation) (instance-of WhereFn BinaryFunction) (nth-domain WhereFn 1 Physical) (nth-domain WhereFn 2 TimePoint) (range WhereFn Region) (relatedInternalConcept WhereFn WhenFn) (documentation WhereFn "Maps an &%Object and a &%TimePoint at which the &%Object exists to the &%Region where the &%Object existed at that &%TimePoint.") (=> (equal (WhereFn ?THING ?TIME) ?REGION) (holdsDuring ?TIME (exactly-located-at ?THING ?REGION))) (subrelation-of manner-of property-of) (nth-domain manner-of 1 Process) (nth-domain manner-of 2 Abstract) (documentation manner-of "(&%manner-of ?PROCESS ?MANNER) means that the &%Process ?PROCESS is qualified by the &%Attribute ?MANNER. The &%Attributes of &%Processes are usually denoted by adverbs and include things like the speed of the wind, the style of a dance, or the intensity of a sports competition.") (<=> (manner-of ?PROC ?ATTR) (not (attribute-of ?PROC ?ATTR))) (instance-of member SpatialRelation) (instance-of member AsymmetricRelation) (subrelation-of member part-of) (nth-domain member 1 Object) (nth-domain member 2 Collection) (relatedInternalConcept member instance-of) (relatedInternalConcept member element) (documentation member "A specialized common sense notion of part for uniform parts of &%Collections. For example, each sheep in a flock of sheep would have the relationship of member to the flock.") (=> (and (member ?OBJ1 ?COLL) (member ?OBJ2 ?COLL)) (not (overlapsSpatially ?OBJ1 ?OBJ2))) (instance-of needs ObjectAttitude) (subrelation-of needs inScopeOfInterest) (nth-domain needs 1 Agent) (nth-domain needs 2 Object) (documentation needs "(&%needs ?AGENT ?OBJECT) means that ?OBJECT is physically required for the continued existence of ?AGENT.") (=> (needs ?AGENT ?OBJECT) (wants ?AGENT ?OBJECT)) (instance-of origin CaseRole) (nth-domain origin 1 Process) (nth-domain origin 2 Object) (documentation origin "(&%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.") (=> (origin ?PROCESS ?OBJ) (located-at (WhereFn ?PROCESS (BeginFn (WhenFn ?PROCESS))) (WhereFn ?OBJ (BeginFn (WhenFn ?OBJ))))) (instance-of part-of SpatialRelation) (instance-of part-of PartialOrderingRelation) (nth-domain part-of 1 Object) (nth-domain part-of 2 Object) (documentation part-of "The basic mereological relation. All other mereological relations are defined in terms of this one. (&%part-of ?PART ?WHOLE) implies that the existence of ?PART is independent of the existence of ?WHOLE. Note that, since &%part-of is a &%ReflexiveRelation, every &%Object is a part of itself.") (=> (and (part-of ?OBJ1 ?OBJ2) (part-of ?OBJ2 ?OBJ1)) (equal ?OBJ1 ?OBJ2)) (instance-of proper-part-of AsymmetricRelation) (subrelation-of proper-part-of part-of) (documentation proper-part-of "(&%proper-part-of ?OBJ1 ?OBJ2) means that ?OBJ1 is a part of ?OBJ2 other than ?OBJ2 itself. This is a &%TransitiveRelation and &%AsymmetricRelation (hence an &%IrreflexiveRelation).") (<=> (proper-part-of ?OBJ1 ?OBJ2) (and (part-of ?OBJ1 ?OBJ2) (not (part-of ?OBJ2 ?OBJ1)))) (instance-of path CaseRole) (nth-domain path 1 Motion) (nth-domain path 2 Region) (documentation path "(&%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.") (=> (and (path ?PROCESS ?PATH) (origin ?PROCESS ?SOURCE) (destination ?PROCESS ?DEST)) (forall (?OBJ) (=> (part-of ?OBJ ?PATH) (between ?SOURCE ?OBJ ?DEST)))) (subrelation-of piece-of part-of) (nth-domain piece-of 1 Substance) (nth-domain piece-of 2 Substance) (documentation piece-of "A specialized common sense notion of part for arbitrary parts of &%Substances. Quasi-synonyms are: chunk, hunk, bit, etc. Compare the other subrelations of &%part-of, viz. &%component-of and &%constituent-material-of.") (=> (piece-of ?SUBSTANCE1 ?SUBSTANCE2) (forall (?CLASS) (=> (instance-of ?SUBSTANCE1 ?CLASS) (instance-of ?SUBSTANCE2 ?CLASS)))) (instance-of possesses AsymmetricRelation) (nth-domain possesses 1 Person) (nth-domain possesses 2 Object) (documentation possesses "&%Relation that holds between an &%Agent and an &%Object when the &%Agent has ownership of the &%Object.") (=> (possesses ?PERSON ?OBJ) (exists (?TYPE) (and (holdsAuthority ?PERSON ?TYPE) (forall (?PROCESS) (=> (instance-of ?PROCESS ?TYPE) (patient ?PROCESS ?OBJ)))))) (instance-of precondition AsymmetricRelation) (nth-domain precondition 1 Entity) (nth-domain precondition 2 Entity) (documentation precondition "A very general &%Predicate. (&%precondition ?ENTITY1 ?ENTITY2) means that ?ENTITY2 can exist or be true only if ?ENTITY1 exists or is true. At some point, this &%Predicate should probably be broken up into more specific &%Predicates with more restrictive &%nth-domain restrictions.") (instance-of property-of AsymmetricRelation) (nth-domain property-of 1 Physical) (nth-domain property-of 2 Abstract) (documentation property-of "This &%Predicate holds between an instance of &%Physical and an instance of &%Attribute. (property-of ?THING ?ATTR) means that ?THING has the &%Attribute ?ATTR. The two subrelations of &%property-of are &%attribute-of and &%manner-of.") (instance-of refers-to BinaryRelation) (subrelation-of refers-to represents) (nth-domain refers-to 1 Representation) (nth-domain refers-to 2 Object) (documentation refers-to "(&%refers-to ?OBJ1 ?OBJ2) means that ?OBJ1 denotes ?OBJ2. Note that &%refers-to is more specific in meaning than &%represents. A &%Representation can &%represent anything, but it can refer only to &%Objects.") (instance-of represents BinaryRelation) (nth-domain represents 1 Representation) (nth-domain represents 2 Entity) (documentation represents "A very general semiotics &%Predicate. (&%represents ?THING ?ENTITY) means that the &%Representation ?THING in some way designates, expresses or connotes ?ENTITY. The &%Predicates &%containsInformation, &%refers-to, and &%realization-of are all subrelations of &%represents.") (subrelation-of equivalentContentClass subsumesContentClass) (instance-of equivalentContentClass EquivalenceRelation) (nth-domain-subclass equivalentContentClass 1 ContentBearingObject) (nth-domain-subclass equivalentContentClass 2 ContentBearingObject) (documentation equivalentContentClass "A &%BinaryRelation that relates two subclasses of &%ContentBearingObject. (&%equivalentContentClass ?CLASS1 ?CLASS2) means that the content expressed by each instance of ?CLASS1 is also expressed by each instance of ?CLASS2, and vice versa. An example would be the relationship between English and Russian editions of Agatha Christie's 'Murder on the Orient Express'. Note that (&%equivalentContentClass ?CLASS1 ?CLASS2) implies (&%subsumesContentClass ?CLASS1 ?CLASS2) and (&%subsumesContentClass ?CLASS2 ?CLASS1).") (<=> (and (subsumesContentClass ?CLASS1 ?CLASS2) (subsumesContentClass ?CLASS2 ?CLASS1)) (equivalentContentClass ?CLASS1 ?CLASS2)) (instance-of subsumesContentClass PartialOrderingRelation) (nth-domain-subclass subsumesContentClass 1 Representation) (nth-domain-subclass subsumesContentClass 2 Representation) (documentation subsumesContentClass "A &%BinaryRelation that relates two subclasses of &%ContentBearingObject. (&%subsumesContentClass ?CLASS1 ?CLASS2) means that the content expressed by each instance of ?CLASS1 is also expressed by each instance of ?CLASS2. Examples include the relationship between a poem and one of its stanzas or between a book and one of its chapters. Note that this is a relation between subclasses of &%ContentBearingObject, rather than instances. If one wants to relate instances, the &%Predicate &%subsumesContentInstance can be used. Note that &%subsumesContentClass is needed in many cases. Consider, for example, the relation between the King James edition of the Bible and its Book of Genesis. This relation holds for every copy of this edition and not just for a single instance.") (<=> (subsumesContentClass ?CLASS1 ?CLASS2) (forall (?INFO ?OBJ1 ?OBJ2) (=> (and (instance-of ?OBJ1 ?CLASS1) (instance-of ?OBJ2 ?CLASS2) (containsInformation ?OBJ1 ?INFO)) (containsInformation ?OBJ2 ?INFO)))) (subrelation-of equivalentContentInstance subsumesContentInstance) (instance-of equivalentContentInstance EquivalenceRelation) (nth-domain equivalentContentInstance 1 ContentBearingObject) (nth-domain equivalentContentInstance 2 ContentBearingObject) (relatedInternalConcept equivalentContentInstance equivalentContentClass) (documentation equivalentContentInstance "A &%BinaryRelation relating two instances of &%ContentBearingObject. (&%equivalentContentInstance ?OBJ1 ?OBJ2) means that the content expressed by ?OBJ1 is identical to the content expressed by ?OBJ2. An example would be the relationship between a handwritten draft of a letter to one's lawyer and a typed copy of the same letter. Note that (&%equivalentContentInstance ?OBJ1 ?OBJ2) implies (&%subsumesContentInstance ?OBJ1 ?OBJ2) and (&%subsumesContentInstance ?OBJ2 ?OBJ2).") (<=> (and (subsumesContentInstance ?OBJ1 ?OBJ2) (subsumesContentInstance ?OBJ2 ?OBJ1)) (equivalentContentInstance ?OBJ1 ?OBJ2)) (instance-of subsumesContentInstance PartialOrderingRelation) (nth-domain subsumesContentInstance 1 ContentBearingObject) (nth-domain subsumesContentInstance 2 ContentBearingObject) (relatedInternalConcept subsumesContentInstance subsumesContentClass) (documentation subsumesContentInstance "A &%BinaryRelation 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.") (<=> (subsumesContentInstance ?OBJ1 ?OBJ2) (forall (?INFO) (=> (containsInformation ?OBJ1 ?INFO) (containsInformation ?OBJ2 ?INFO)))) (subrelation-of realization-of represents) (instance-of realization-of AsymmetricRelation) (nth-domain realization-of 1 ContentBearingProcess) (nth-domain realization-of 2 Proposition) (relatedInternalConcept realization-of equivalentContentInstance) (relatedInternalConcept realization-of containsInformation) (documentation realization-of "A subrelation of &%represents. (&%realizationOf ?PROCESS ?PROP) means that ?PROCESS is a Process which expresses the content of ?PROP. Examples include a particular musical performance, which realizes the content of a musical score, or the reading of a poem.") (=> (realization-of ?PROCESS ?PROP) (exists (?OBJ) (and (instance-of ?OBJ ContentBearingObject) (containsInformation ?OBJ ?PROP)))) (subrelation-of resource patient) (nth-domain resource 1 Process) (nth-domain resource 2 Object) (documentation resource "(&%resource ?PROCESS ?RESOURCE) means that ?RESOURCE is present at the beginning of ?PROCESS, is used by ?PROCESS, and as a consequence is changed by ?PROCESS. For example, soap is a &%resource in the following proposition: the gun was carved out of soap. Note that &%resource differs from &%instrument, another subrelation of &%patient, in that it is structurally altered in some way by the &%Process.") (<=> (resource ?PROC ?OBJ) (not (instrument ?PROC ?OBJ))) (=> (and (resource ?PROC ?OBJ) (holdsDuring (ImmediatePastFn (WhenFn ?PROC)) (measure ?OBJ ?QUANT1)) (holdsDuring (ImmediateFutureFn (WhenFn ?PROC)) (measure ?OBJ ?QUANT2))) (greaterThan ?QUANT1 ?QUANT2)) (subrelation-of result patient) (nth-domain result 1 Process) (nth-domain result 2 Object) (documentation result "(result ?ACTION ?OUTPUT) means that ?OUTPUT is a product of ?ACTION. For example, house is a &%result in the following proposition: Eric built a house.") (=> (result ?PROC ?OBJ) (forall (?TIME) (=> (before ?TIME (BeginFn (When ?PROC))) (not (exists-at ?OBJ ?TIME))))) (instance-of subCollection TransitiveRelation) (instance-of subCollection IrreflexiveRelation) (nth-domain subCollection 1 Collection) (nth-domain subCollection 2 Collection) (documentation subCollection "(&%subCollection ?COLL1 ?COLL2) means that the &%Collection ?COLL1 is a proper part of the &%Collection ?COLL2.") (instance-of subPlan-of TransitiveRelation) (instance-of subPlan-of IrreflexiveRelation) (nth-domain subPlan-of 1 Plan) (nth-domain subPlan-of 2 Plan) (documentation subPlan-of "(&%subPlan-of ?PLAN1 ?PLAN2) means that ?PLAN1 is a &%Plan which is a proper part of ?PLAN2. This relation is generally used to relate a supporting &%Plan to the overall &%Plan in a particular context.") (instance-of subProcess PartialOrderingRelation) (nth-domain subProcess 1 Process) (nth-domain subProcess 2 Process) (documentation subProcess "(&%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.") (=> (subProcess ?SUBPROC ?PROC) (or (equal (WhenFn ?SUBPROC) (WhenFn ?PROC)) (during (WhenFn ?SUBPROC) (WhenFn ?PROC)))) (=> (subProcess ?SUBPROC ?PROC) (forall (?REGION) (=> (located-at ?PROC ?REGION) (located-at ?SUBPROC ?REGION)))) (instance-of patient CaseRole) (nth-domain patient 1 Process) (nth-domain patient 2 Object) (documentation patient "(&%patient ?PROCESS ?OBJECT) means that ?OBJECT 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.") (instance-of uses AsymmetricRelation) (nth-domain uses 1 Object) (nth-domain uses 2 Agent) (documentation uses "(&%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.") (=> (uses ?OBJ ?AGENT) (exists (?PROC) (and (agent ?PROC ?AGENT) (instrument ?PROC ?OBJ)))) (instance-of version-of AsymmetricRelation) (nth-domain-subclass version-of 1 Artifact) (nth-domain-subclass version-of 2 Artifact) (documentation version-of "Some &%Artifacts have a life cycle with discrete stages or versions. (&%version-of ARTIFACT1 ARTIFACT2) means that ARTIFACT1 is a version of ARTIFACT2. Note that this &%Predicate relates subclasses of &%Artifact and not instances.") (=> (version-of ?ARTIFACT1 ?ARTIFACT2) (subclass-of ?ARTIFACT1 ?ARTIFACT2)) (instance-of wants ObjectAttitude) (subrelation-of wants inScopeOfInterest) (nth-domain wants 1 Agent) (nth-domain wants 2 Object) (documentation wants "(&%wants ?AGENT ?OBJECT) means that ?OBJECT is desired by ?AGENT, i.e. ?AGENT believes that ?OBJECT will satisfy one of its goals.") (=> (wants ?AGENT ?OBJ) (exists (?PURP) (hasPurposeForAgent ?OBJ ?PURP ?AGENT))) ;; END FILE ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ARTIFACT HIERARCHY ;; ;;;;;;;;;;;;;;;;;;;;;;;;;; ;; This section of the ontology will eventually encompass all artifacts. For the ;; time being, it is mostly restricted to the content of the Ontolingua ontology ;; component-assemblies, which covers the types of elements used to construct ;; engineering systems. (subclass-of StationaryArtifact Artifact) (documentation StationaryArtifact "A &%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.") (=> (instance-of ?ARTIFACT StationaryArtifact) (exists (?PLACE) (forall (?TIME) (equal (WhereFn ?ARTIFACT ?TIME) ?PLACE)))) (subclass-of Building StationaryArtifact) (documentation Building "The Class of StationaryArtifacts which are intended to house Humans and their Activities.") (=> (instance-of ?BUILDING Building) (or (exists (?HUMAN) (and (instance-of ?HUMAN Human) (lives-in ?HUMAN ?BUILDING))) (exists (?ACT) (and (instance-of ?ACT Activity) (located-at ?ACT ?BUILDING))))) (subclass-of Device Artifact) (documentation Device "A &%Device is an &%Artifact whose purpose is to serve as an &%instrument in a specific type of task.") (=> (instance-of ?DEVICE Device) (exists (?PROC) (and (instance-of ?PROC Process) (instrument ?PROC ?DEVICE)))) (subclass-of TransportationDevice Device) (documentation TransportationDevice "A &%TransportationDevice is a &%Device which serves as an &%instrument in &%Transportation &%Processes.") (subclass-of Machine Device) (documentation Machine "&%Machines are &%Devices which are self-powered, i.e. their energy does not come from the exercion of &%Humans or &%Animals.") (subclass-of EngineeringElement Artifact) (documentation EngineeringElement "An &%EngineeringElement is any element that is used in the construction of a &%Device.") (=> (instance-of ?ELEMENT EngineeringElement) (exists (?DEVICE) (and (instance-of ?DEVICE Device) (part-of ?ELEMENT ?DEVICE)))) (subclass-of EngineeringComponent EngineeringElement) (documentation EngineeringComponent "A fundamental concept that applies in many engineering domains. An &%EngineeringComponent is an &%EngineeringElement 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.") (=> (instance-of ?COMP EngineeringComponent) (exists (?DEVICE) (and (instance-of ?DEVICE Device) (component-of ?COMP ?DEVICE)))) (subclass-of Junction EngineeringElement) (documentation Junction "An interface between two &%EngineeringElements that have different electrical characteristics.") (subclass-of Terminal EngineeringElement) (documentation Terminal "The end of an &%EngineeringElement where signals are either transmitted or received.") (subrelation-of engineeringSubcomponent proper-part-of) (nth-domain engineeringSubcomponent 1 EngineeringComponent) (nth-domain engineeringSubcomponent 2 EngineeringComponent) (documentation engineeringSubcomponent "(&%engineeringSubcomponent ?SUB ?SUPER) means that the &%EngineeringComponent ?SUB is structurally a &%proper-part-of ?SUPER. This relation is an &%AsymmetricRelation, since two &%EngineeringComponents cannot be subcomponents of each other.") (instance-of connectedEngineeringComponents SymmetricRelation) (instance-of connectedEngineeringComponents IrreflexiveRelation) (nth-domain connectedEngineeringComponents 1 EngineeringComponent) (nth-domain connectedEngineeringComponents 2 EngineeringComponent) (documentation connectedEngineeringComponents "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.") (=> (connectedEngineeringComponents ?COMP1 ?COMP2) (and (not (engineeringSubcomponent ?COMP1 ?COMP2)) (not (engineeringSubcomponent ?COMP2 ?COMP1)))) (=> (connectedEngineeringComponents ?COMP1 ?COMP2) (not (or (instance-of ?COMP1 EngineeringConnection)) (instance-of ?COMP2 EngineeringConnection))) (<=> (connectedEngineeringComponents ?COMP1 ?COMP2) (exists (?CONNECTION) (connectsEngineeringComponents ?CONNECTION ?COMP1 ?COMP2))) (instance-of EngineeringComponentFn UnaryFunction) (inverse EngineeringComponentFn TerminalFn) (nth-domain EngineeringComponentFn 1 Terminal) (range EngineeringComponentFn EngineeringComponent) (documentation EngineeringComponentFn "A &%UnaryFunction that maps a &%Terminal to its corresponding &%EngineeringComponent.") (instance-of TerminalFn UnaryFunction) (nth-domain TerminalFn 1 EngineeringComponent) (range TerminalFn Terminal) (documentation TerminalFn "A &%UnaryFunction that maps an &%EngineeringComponent to its corresponding &%Terminal.") (instance-of JunctionFn UnaryFunction) (nth-domain JunctionFn 1 Terminal) (range JunctionFn Junction) (documentation JunctionFn "A &%UnaryFunction that maps a &%Terminal to its corresponding &%Junction.") (subclass-of EngineeringConnection EngineeringComponent) (documentation EngineeringConnection "An &%EngineeringConnection is an &%EngineeringComponent that represents a connection relationship between two other &%EngineeringComponents. It is a reification of the &%Predicate &%connectedEngineeringComponents. That means that whenever this &%Predicate holds between two &%EngineeringComponents, there exists an &%EngineeringConnection. The practical reason for reifying a relationship is to be able to attach other information about it. For example, one might want to say that a particular connection is associated with some shared parameters, or that it is of a particular type. &%EngineeringConnections are &%EngineeringComponents and can therefore be an &%engineeringSubcomponent of other &%EngineeringComponents. However, to provide for modular regularity in component systems, &%EngineeringConnections cannot be connected. For each pair of &%EngineeringComponents related by &%connectedEngineeringComponents, there exists at least one &%EngineeringConnection. However, that object may not be unique, and the same &%EngineeringConnection may be associated with several pairs of &%EngineeringComponents.") (=> (instance-of ?CONNECTION EngineeringConnection) (exists (?COMP1 ?COMP2) (connectsEngineeringComponents ?CONNECTION ?COMP1 ?COMP2))) (instance-of connectsEngineeringComponents TernaryRelation) (nth-domain connectsEngineeringComponents 1 EngineeringConnection) (nth-domain connectsEngineeringComponents 2 EngineeringComponent) (nth-domain connectsEngineeringComponents 3 EngineeringComponent) (documentation connectsEngineeringComponents "&%connectsEngineeringComponents is a &%TernaryRelation that maps from an &%EngineeringConnection to the &%EngineeringComponents it connects. Since &%EngineeringComponents cannot be connected to themselves and there cannot be an &%EngineeringConnection without a &%connectedEngineeringComponents &%Predicate, the second and third arguments of any &%connectsEngineeringComponents relationship will always be distinct for any given first argument.") ;; END FILE ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;;;;;; ;; NUMBER HIERARCHY ;; ;;;;;;;;;;;;;;;;;;;;;;;;; ;; The following formulas incorporate the Number hierarchy from the ;; ontology 'kif-numbers' on the Ontolingua server. (subclass-of Number Quantity) (documentation Number "A measure of how many things there are of a certain kind. &%Numbers are subclassed into &%RealNumber and &%ComplexNumber (ImaginaryNumber is an instance of Number).") (subclass-of RealNumber Number) (partition RealNumber NegativeRealNumber NonnegativeRealNumber) (documentation RealNumber "Any &%Number that can be expressed as a decimal, i.e. any &%umber that has a position on the number line.") (instance-of ImaginaryNumber (RelativeComplementFn Number RealNumber)) (documentation ImaginaryNumber "The square root of -1.") (subclass-of RationalNumber RealNumber) (documentation RationalNumber "Any &%RealNumber that is the product of dividing two &%Integers.") (=> (instance-of ?NUMBER RationalNumber) (exists (?INT1 ?INT2) (and (instance-of ?INT1 Integer) (instance-of ?INT2 Integer) (equal ?NUMBER (DivisionFn ?INT1 ?INT2))))) (subclass-of NonnegativeRealNumber RealNumber) (documentation NonnegativeRealNumber "A &%RealNumber that is greater than or equal to zero.") (=> (instance-of ?NUMBER NonnegativeRealNumber) (greaterThanOrEqualTo ?NUMBER 0)) (=> (instance-of ?NUMBER NonnegativeRealNumber) (or (equal (SignumFn ?NUMBER) 1) (equal (SignumFn ?NUMBER) 0))) (subclass-of PositiveRealNumber NonnegativeRealNumber) (documentation PositiveRealNumber "A &%RealNumber that is greater than zero.") (=> (instance-of ?NUMBER PositiveRealNumber) (greaterThan ?NUMBER 0)) (=> (instance-of ?NUMBER PositiveRealNumber) (equal (SignumFn ?NUMBER) 1)) (subclass-of NegativeRealNumber RealNumber) (documentation NegativeRealNumber "A &%RealNumber that is less than zero.") (=> (instance-of ?NUMBER NegativeRealNumber) (lessThan ?NUMBER 0)) (=> (instance-of ?NUMBER NegativeRealNumber) (equal (SignumFn ?NUMBER) -1)) (subclass-of Integer RationalNumber) (partition Integer OddInteger EvenInteger) (partition Integer NegativeInteger NonnegativeInteger) (documentation Integer "A negative or nonnegative whole number.") (subclass-of EvenInteger Integer) (documentation EvenInteger "An &%Integer that is evenly divisible by 2.") (=> (instance-of ?NUMBER EvenInteger) (equal (RemainderFn ?NUMBER 2) 0)) (subclass-of OddInteger Integer) (documentation OddInteger "An &%Integer that is not evenly divisible by 2.") (=> (instance-of ?NUMBER OddInteger) (equal (RemainderFn ?NUMBER 2) 1)) (subclass-of PrimeNumber Integer) (documentation PrimeNumber "An &%Integer that is evenly divisible only by itself and 1.") (=> (instance-of ?PRIME PrimeNumber) (forall (?NUMBER) (=> (equal (RemainderFn ?PRIME ?NUMBER) 0) (or (equal ?NUMBER 1) (equal ?NUMBER ?PRIME))))) (subclass-of NonnegativeInteger Integer) (subclass-of NonnegativeInteger NonnegativeRealNumber) (documentation NonnegativeInteger "An &%Integer that is greater than or equal to zero.") (subclass-of NegativeInteger Integer) (subclass-of NegativeInteger NegativeRealNumber) (documentation NegativeInteger "An &%Integer that is less than zero.") (subclass-of PositiveInteger NonnegativeInteger) (subclass-of PositiveInteger PositiveRealNumber) (documentation PositiveInteger "An &%Integer that is greater than zero.") (subclass-of BinaryNumber RealNumber) (documentation BinaryNumber "Elements from the number system with base 2. Every &%BinaryNumber is expressed as a sequence of the digits 1 and 0.") (subclass-of ComplexNumber Number) (disjoint ComplexNumber RealNumber) (documentation ComplexNumber "A &%Number that consists of two components: a &%RealNumber and the &%ImaginaryNumber.") (=> (instance-of ?NUMBER ComplexNumber) (exists (?PART1 ?PART2) (and (equal ?PART1 (RealNumberFn ?NUMBER)) (equal ?PART2 (ImaginaryPartFn ?NUMBER))))) (subclass-of NonspecificNumber Number) (documentation NonspecificNumber "A &%NonspecificNumber is used to indicate quantity of items when one cannot or does not want to say exactly how many items there are.") (instance-of Few NonspecificNumber) (documentation Few "Useful for contextual assessment of number. Note that a formula containing this &%Class cannot be converted into a precise numeric range. For example, compare 'few books on the table' (perhaps there are three books) and 'few eritrocytes in your blood' (this might mean there are 3 million per part).") (instance-of Many NonspecificNumber) (documentation Many "Useful for contextual assessment of number. Note that this cannot be converted into a precise numeric range. For example, compare 'many books on the table' (perhaps there are twelve books) and 'many eritrocytes in your blood' (this might mean there are 8 million per part).") (instance-of MultiplicationFn AssociativeFunction) (instance-of MultiplicationFn CommutativeFunction) (instance-of MultiplicationFn RelationExtendedToQuantities) (nth-domain MultiplicationFn 1 Quantity) (nth-domain MultiplicationFn 2 Quantity) (range MultiplicationFn Quantity) (documentation MultiplicationFn "If ?NUMBER1 and ?NUMBER2 are &%Numbers, then (&%MultiplicationFn ?NUMBER1 ?NUMBER2) is the arithmetical product of these numbers.") (instance-of AdditionFn AssociativeFunction) (instance-of AdditionFn CommutativeFunction) (instance-of AdditionFn RelationExtendedToQuantities) (nth-domain AdditionFn 1 Quantity) (nth-domain AdditionFn 2 Quantity) (range AdditionFn Quantity) (documentation AdditionFn "If ?NUMBER1 and ?NUMBER2 are &%Numbers, then (&%AdditionFn ?NUMBER1 ?NUMBER2) is the arithmetical sum of these numbers.") (instance-of SubtractionFn AssociativeFunction) (instance-of SubtractionFn RelationExtendedToQuantities) (nth-domain SubtractionFn 1 Quantity) (nth-domain SubtractionFn 2 Quantity) (range SubtractionFn Quantity) (documentation SubtractionFn "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.") (instance-of DivisionFn AssociativeFunction) (instance-of DivisionFn RelationExtendedToQuantities) (nth-domain DivisionFn 1 Quantity) (nth-domain DivisionFn 2 Quantity) (range DivisionFn Quantity) (documentation DivisionFn "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.") (instance-of AbsoluteValueFn UnaryFunction) (nth-domain AbsoluteValueFn 1 RealNumber) (range AbsoluteValueFn PositiveRealNumber) (documentation AbsoluteValueFn "The value of (&%AbsoluteValueFn ?NUMBER) is the absolute value of the &%RealNumber ?NUMBER.") (<=> (equal (AbsoluteValueFn ?NUMBER1) ?NUMBER2) (or (and (instance-of ?NUMBER1 PositiveInteger) (equal ?NUMBER1 ?NUMBER2)) (and (instance-of ?NUMBER1 NegativeInteger) (equal ?NUMBER2 (SubtractionFn 0 ?NUMBER1))))) (instance-of ArcCosineFn UnaryFunction) (inverse ArcCosineFn CosineFn) (nth-domain ArcCosineFn 1 RealNumber) (range ArcCosineFn PlaneAngleMeasure) (documentation ArcCosineFn "(&%ArcCosineFn ?NUMBER) returns the arc cosine of the &%RealNumber ?NUMBER. It is the &%inverse of &%CosineFn.") (instance-of ArcSineFn UnaryFunction) (inverse ArcSineFn SineFn) (nth-domain ArcSineFn 1 RealNumber) (range ArcSineFn PlaneAngleMeasure) (documentation ArcSineFn "(&%ArcSineFn ?NUMBER) returns the arc sine of the &%RealNumber ?NUMBER. It is the &%inverse of &%SineFn.") (instance-of ArcTangentFn UnaryFunction) (inverse ArcTangentFn TangentFn) (nth-domain ArcTangentFn 1 RealNumber) (range ArcTangentFn PlaneAngleMeasure) (documentation ArcTangentFn "(&%ArcTangentFn ?NUMBER) returns the arc tangent of the &%RealNumber ?NUMBER. It is the &%inverse of &%TangentFn.") (instance-of CeilingFn UnaryFunction) (nth-domain CeilingFn 1 RealNumber) (range CeilingFn Integer) (documentation CeilingFn "(&%CeilingFn ?NUMBER) returns the smallest &%Integer greater than or equal to the &%RealNumber ?NUMBER.") (=> (equal (CeilingFn ?NUMBER) ?INT) (not (exists (?OTHERINT) (and (instance-of ?OTHERINT Integer) (greaterThanOrEqualTo ?OTHERINT ?NUMBER) (lessThan ?OTHERINT ?INT))))) (instance-of CosineFn UnaryFunction) (nth-domain CosineFn 1 PlaneAngleMeasure) (range CosineFn RealNumber) (documentation CosineFn "(&%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.") (instance-of DenominatorFn UnaryFunction) (nth-domain DenominatorFn 1 RealNumber) (range DenominatorFn Integer) (documentation DenominatorFn "(&%DenominatorFn ?NUMBER) returns the denominator of the canonical reduced form of the &%RealNumber ?NUMBER.") (instance-of ExponentiationFn BinaryFunction) (instance-of ExponentiationFn RelationExtendedToQuantities) (nth-domain ExponentiationFn 1 Quantity) (nth-domain ExponentiationFn 2 Integer) (range ExponentiationFn Quantity) (documentation ExponentiationFn "(&%ExponentiationFn ?NUMBER ?INT) returns the &%RealNumber ?NUMBER raised to the power of the &%Integer ?INT.") (instance-of FloorFn UnaryFunction) (nth-domain FloorFn 1 RealNumber) (range FloorFn Integer) (documentation FloorFn "(&%FloorFn ?NUMBER) returns the largest &%Integer less than or equal to the &%RealNumber ?NUMBER.") (=> (equal (FloorFn ?NUMBER) ?INT) (not (exists (?OTHERINT) (and (instance-of ?OTHERINT Integer) (lessThanOrEqualTo ?OTHERINT ?NUMBER) (greaterThan ?OTHERINT ?INT))))) (instance-of GreatestCommonDivisorFn VariableArityFunction) (range GreatestCommonDivisorFn Integer) (documentation GreatestCommonDivisorFn "(&%GreatestCommonDivisorFn ?NUMBER1 ?NUMBER2 ... ?NUMBER) returns the greatest common divisor of ?NUMBER1 through ?NUMBER.") (instance-of ImaginaryPartFn UnaryFunction) (nth-domain ImaginaryPartFn 1 ComplexNumber) (range ImaginaryPartFn ImaginaryNumber) (documentation ImaginaryPartFn "(&%ImaginaryPartFn ?NUMBER) returns the imaginary part of ?NUMBER.") (instance-of IntegerSquareRootFn UnaryFunction) (nth-domain IntegerSquareRootFn 1 RealNumber) (range IntegerSquareRootFn NonnegativeInteger) (documentation IntegerSquareRootFn "(&%IntegerSquareRootFn ?NUMBER) returns the integer square root of ?NUMBER.") (instance-of LeastCommonMultipleFn VariableArityFunction) (range LeastCommonMultipleFn Integer) (documentation LeastCommonMultipleFn "(&%LeastCommonMultipleFn ?NUMBER1 ?NUMBER2 ... ?NUMBER) returns the least common multiple of ?NUMBER1 through ?NUMBER.") (instance-of LogFn BinaryFunction) (nth-domain LogFn 1 RealNumber) (nth-domain LogFn 2 PositiveInteger) (range LogFn RealNumber) (documentation LogFn "(LogFn ?NUMBER ?INT) returns the logarithm of the &%RealNumber ?NUMBER in the base denoted by the &%Integer ?INT.") (instance-of MaxFn AssociativeFunction) (instance-of MaxFn CommutativeFunction) (instance-of MaxFn RelationExtendedToQuantities) (nth-domain MaxFn 1 Quantity) (nth-domain MaxFn 2 Quantity) (range MaxFn Quantity) (documentation MaxFn "(&%MaxFn ?NUMBER1 ?NUMBER2) is the largest of ?NUMBER1 and ?NUMBER2. In cases where ?NUMBER1 is equal to ?NUMBER2, &%MaxFn returns one of its arguments.") (=> (equal (MaxFn ?NUMBER1 ?NUMBER2) ?NUMBER) (or (and (equal ?NUMBER ?NUMBER1) (greaterThan ?NUMBER1 ?NUMBER2)) (and (equal ?NUMBER ?NUMBER2) (greaterThan ?NUMBER2 ?NUMBER1)) (and (equal ?NUMBER ?NUMBER1) (equal ?NUMBER ?NUMBER2)))) (instance-of MinFn AssociativeFunction) (instance-of MinFn CommutativeFunction) (instance-of MinFn RelationExtendedToQuantities) (nth-domain MinFn 1 Quantity) (nth-domain MinFn 2 Quantity) (range MinFn Quantity) (documentation MinFn "(&%MinFn ?NUMBER1 ?NUMBER2) is the smallest of ?NUMBER1 and ?NUMBER2. In cases where ?NUMBER1 is equal to ?NUMBER2, &%MinFn returns one of its arguments.") (=> (equal (MinFn ?NUMBER1 ?NUMBER2) ?NUMBER) (or (and (equal ?NUMBER ?NUMBER1) (lessThan ?NUMBER1 ?NUMBER2)) (and (equal ?NUMBER ?NUMBER2) (lessThan ?NUMBER2 ?NUMBER1)) (and (equal ?NUMBER ?NUMBER1) (equal ?NUMBER ?NUMBER2)))) (instance-of NumeratorFn UnaryFunction) (nth-domain NumeratorFn 1 RealNumber) (range NumeratorFn Integer) (documentation NumeratorFn "(&%NumeratorFn ?NUMBER) returns the numerator of the canonical reduced form ?NUMBER.") (instance-of Pi-TheNumber RealNumber) (documentation Pi-TheNumber "&%Pi-TheNumber is the &%RealNumber that is the ratio of the perimeter of a circle to its diameter. It is approximately equal to 3.141592653589793.") (instance-of RationalNumberFn UnaryFunction) (nth-domain RationalNumberFn 1 Number) (range RationalNumberFn RationalNumber) (documentation RationalNumberFn "(&%RationalNumberFn ?NUMBER) returns the rational representation of ?NUMBER.") (instance-of RealNumberFn UnaryFunction) (nth-domain RealNumberFn 1 Number) (range RealNumberFn RealNumber) (documentation RealNumberFn "(RealNumberFn ?NUMBER) returns the part of ?NUMBER that is a &%RealNumber.") (instance-of ReciprocalFn UnaryFunction) (instance-of ReciprocalFn RelationExtendedToQuantities) (nth-domain ReciprocalFn 1 Quantity) (range ReciprocalFn Quantity) (documentation ReciprocalFn "(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.") (equal (ReciprocalFn ?NUMBER) (ExponentiationFn ?NUMBER -1)) (equal 1 (MultiplicationFn ?NUMBER (ReciprocalFn ?NUMBER))) (instance-of RemainderFn BinaryFunction) (instance-of RemainderFn RelationExtendedToQuantities) (nth-domain RemainderFn 1 Quantity) (nth-domain RemainderFn 2 Quantity) (range RemainderFn Quantity) (documentation RemainderFn "(RemainderFn ?NUMBER ?DIVISOR) is the remainder of the number ?NUMBER divided by the number ?DIVISOR. The result has the same sign as ?DIVISOR.") (<=> (equal (RemainderFn ?NUMBER1 ?NUMBER2) ?NUMBER) (equal (AdditionFn (MultiplicationFn (FloorFn (DivisionFn ?NUMBER1 ?NUMBER2)) ?NUMBER2) ?NUMBER) ?NUMBER1)) (=> (equal (RemainderFn ?NUMBER1 ?NUMBER2) ?NUMBER) (equal (SignumFn ?NUMBER2) (SignumFn ?NUMBER))) (instance-of RoundFn UnaryFunction) (instance-of RoundFn RelationExtendedToQuantities) (nth-domain RoundFn 1 Quantity) (range RoundFn Quantity) (documentation RoundFn "(&%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.") (=> (equal (RoundFn ?NUMBER1) ?NUMBER2) (or (=> (lessThan (SubtractionFn ?NUMBER1 (FloorFn ?NUMBER1)) .5) (equal ?NUMBER2 (FloorFn ?NUMBER1))) (=> (greaterThanOrEqualTo (SubtractionFn ?NUMBER1 (FloorFn ?NUMBER1)) .5) (equal ?NUMBER2 (CeilingFn ?NUMBER1))))) (instance-of SignumFn UnaryFunction) (nth-domain SignumFn 1 RealNumber) (range SignumFn Integer) (documentation SignumFn "(SignumFn ?NUMBER) denotes the sign of ?NUMBER. This is one of the following values: -1, 1, or 0.") (instance-of SineFn UnaryFunction) (nth-domain SineFn 1 PlaneAngleMeasure) (range SineFn RealNumber) (documentation SineFn "(&%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.") (instance-of SquareRootFn UnaryFunction) (nth-domain SquareRootFn 1 RealNumber) (range SquareRootFn RealNumber) (documentation SquareRootFn "(SquareRootFn ?NUMBER) is the principal square root of ?NUMBER.") (=> (equal (SquareRootFn ?NUMBER1) ?NUMBER2) (equal (MultiplicationFn ?NUMBER2 ?NUMBER2) ?NUMBER1)) (instance-of TangentFn UnaryFunction) (nth-domain TangentFn 1 PlaneAngleMeasure) (range TangentFn RealNumber) (documentation TangentFn "(&%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.") (equal (TangentFn ?DEGREE) (DivisionFn (SineFn ?DEGREE) (CosineFn ?DEGREE))) (instance-of lessThan TransitiveRelation) (instance-of lessThan IrreflexiveRelation) (instance-of lessThan RelationExtendedToQuantities) (trichotomizingOn lessThan RealNumber) (nth-domain lessThan 1 Quantity) (nth-domain lessThan 2 Quantity) (documentation lessThan "(&%lessThan ?NUMBER1 ?NUMBER2) is true just in case the &%Quantity ?NUMBER1 is less than the &%Quantity ?NUMBER2.") (instance-of greaterThan TransitiveRelation) (instance-of greaterThan IrreflexiveRelation) (instance-of greaterThan RelationExtendedToQuantities) (trichotomizingOn greaterThan RealNumber) (nth-domain greaterThan 1 Quantity) (nth-domain greaterThan 2 Quantity) (inverse greaterThan lessThan) (documentation greaterThan "(&%greaterThan ?NUMBER1 ?NUMBER2) is true just in case the &%Quantity ?NUMBER1 is greater than the &%Quantity ?NUMBER2.") (instance-of lessThanOrEqualTo PartialOrderingRelation) (instance-of lessThanOrEqualTo RelationExtendedToQuantities) (trichotomizingOn lessThanOrEqualTo RealNumber) (nth-domain lessThanOrEqualTo 1 Quantity) (nth-domain lessThanOrEqualTo 2 Quantity) (documentation lessThanOrEqualTo "(&%lessThanOrEqualTo ?NUMBER1 ?NUMBER2) is true just in case the &%Quantity ?NUMBER1 is less than or equal to the &%Quantity ?NUMBER2.") (<=> (lessThanOrEqualTo ?NUMBER1 ?NUMBER2) (or (equal ?NUMBER1 ?NUMBER2) (lessThan ?NUMBER1 ?NUMBER2))) (instance-of greaterThanOrEqualTo PartialOrderingRelation) (instance-of greaterThanOrEqualTo RelationExtendedToQuantities) (trichotomizingOn greaterThanOrEqualTo RealNumber) (nth-domain greaterThanOrEqualTo 1 Quantity) (nth-domain greaterThanOrEqualTo 2 Quantity) (inverse greaterThanOrEqualTo lessThanOrEqualTo) (documentation greaterThanOrEqualTo "(&%greaterThanOrEqualTo ?NUMBER1 ?NUMBER2) is true just in case the &%Quantity ?NUMBER1 is greater than the &%Quantity ?NUMBER2.") (<=> (greaterThanOrEqualTo ?NUMBER1 ?NUMBER2) (or (equal ?NUMBER1 ?NUMBER2) (greaterThan ?NUMBER1 ?NUMBER2))) (instance-of SuccessorFn UnaryFunction) (nth-domain SuccessorFn 1 Integer) (range SuccessorFn Integer) (documentation SuccessorFn "A &%UnaryFunction that maps an &%Integer to its successor, e.g. the successor of 5 is 6.") (=> (equal (SuccessorFn ?INT1) (SuccessorFn ?INT2)) (equal ?INT1 ?INT2)) (=> (instance-of ?INT Integer) (lessThan ?INT (SuccessorFn ?INT))) (=> (and (instance-of ?INT1 Integer) (instance-of ?INT2 Integer)) (not (and (lessThan ?INT1 ?INT2) (lessThan ?INT2 (SuccessorFn ?INT1))))) (=> (instance-of ?INT Integer) (equal ?INT (SuccessorFn (PredecessorFn ?INT)))) (=> (instance-of ?INT Integer) (equal ?INT (PredecessorFn (SuccessorFn ?INT)))) (instance-of PredecessorFn UnaryFunction) (nth-domain PredecessorFn 1 Integer) (range PredecessorFn Integer) (documentation PredecessorFn "A &%UnaryFunction that maps an &%Integer to its predecessor, e.g. the predecessor of 5 is 4.") (=> (equal (PredecessorFn ?INT1) (PredecessorFn ?INT2)) (equal ?INT1 ?INT2)) (=> (instance-of ?INT Integer) (greaterThan ?INT (PredecessorFn ?INT))) (=> (and (instance-of ?INT1 Integer) (instance-of ?INT2 Integer)) (not (and (lessThan ?INT2 ?INT1) (lessThan (PredecessorFn ?INT1) ?INT2)))) ;; END FILE ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; QUANTITIES AND UNITS OF MEASURE ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; The following formulas incorporate the relations in the Quantities ;; ontology (developed by ITBM-CNR) and the units of measure in the ;; "Standard Units" and "Standard Dimensions" ontologies on the Ontolingua ;; server. ;; This section has been extensively revised by Helena Sofia Pinto of the ;; Instituto Superior Tecnico in Portugal. The sources for these revisions ;; were ;; - Barry Taylor, NIST Special Publication 811, Guide for the Use of the ;; International System of Units (SI), 1995. ;; - Encyclopaedia Britannica (on-line version at http://www.britannica.com) (subclass-of PhysicalQuantity Quantity) (partition PhysicalQuantity ConstantQuantity FunctionQuantity) (documentation PhysicalQuantity "&%A PhysicalQuantity is a measure of some quantifiable aspect of the modeled world, such as 'the earth's diameter' (a constant length) and 'the stress in a loaded deformable solid' (a measure of stress, which is a function of three spatial coordinates). All &%PhysicalQuantities are either &%ConstantQuantities or &%FunctionQuantities. Instances of &%ConstantQuantity are dependent on a &%UnitOfMeasure, while instances of &%FunctionQuantity are &%Functions that map instances of &%ConstantQuantity to other instances of &%ConstantQuantity (e.g., &%TimeDependentQuantities are &%FunctionQuantities). Although the name and definition of &%PhysicalQuantity is borrowed from physics, &%PhysicalQuantities need not be material. Aside from the dimensions of length, time, velocity, etc., nonphysical dimensions such as currency are also possible. Accordingly, amounts of money would be instances of &%PhysicalQuantity. &%PhysicalQuantities are distinguished from &%Numbers by the fact that the former are associated with a dimension of measurement.") (subclass-of ConstantQuantity PhysicalQuantity) (documentation ConstantQuantity "A &%ConstantQuantity is a &%PhysicalQuantity which has a constant value, e.g. 3 meters and 5 hours. The magnitude (see &%MagnitudeFn) of every &%ConstantQuantity is a &%RealNumber. &%ConstantQuantities are distinguished from &%FunctionQuantities, which map &%ConstantQuantities to other &%ConstantQuantities. All &%ConstantQuantites are expressed with the &%BinaryFunction &%MeasureFn, which takes a &%Number and a &%UnitOfMeasure as arguments. For example, 3 &%Meters can be expressed as (&%MeasureFn 3 &%Meter). &%ConstantQuantities form a partial order (see &%PartialOrderingRelation) with the &%lessThan relation, since &%lessThan is a &%RelationExtendedToQuantities and &%lessThan is defined over the &%RealNumbers. The &%lessThan relation is not a total order (see &%TotalOrderingRelation) over the class &%ConstantQuantity since elements of some subclasses of &%ConstantQuantity (such as length quantities) are incomparable to elements of other subclasses of &%ConstantQuantity (such as mass quantities).") (subclass-of FunctionQuantity PhysicalQuantity) (subclass-of FunctionQuantity Function) (documentation FunctionQuantity "A &%FunctionQuantity is a &%Function that maps from one or more instances of &%ConstantQuantity to another instance of &%ConstantQuantity. For example, the velocity of a particle would be represented by a &%FunctionQuantity mapping values of time (which are &%ConstantQuantities) to values of distance (also &%ConstantQuantities). Note that all instances of &%FunctionQuantity are &%Functions with a fixed arity. Note too that all elements of the range of a &%FunctionQuantity have the same physical dimension as the &%FunctionQuantity itself.") (subclass-of UnaryConstantFunctionQuantity FunctionQuantity) (subclass-of UnaryConstantFunctionQuantity UnaryFunction) (documentation UnaryConstantFunctionQuantity "The class of &%UnaryFunctions that map from the &%Class &%ConstantQuantity to the &%Class &%ConstantQuantity.") (=> (instance-of ?FUNCTION UnaryConstantFunctionQuantity) (and (nth-domain ?FUNCTION 1 ConstantQuantity) (range ?FUNCTION ConstantQuantity))) (subclass-of TimeDependentQuantity UnaryConstantFunctionQuantity) (subclass-of TimeDependentQuantity ContinuousFunction) (documentation TimeDependentQuantity "A &%UnaryConstantFunction of continuous time. All instances of this &%Class map a time quantity into another &%ConstantQuantity such as temperature. For example, 'the temperature at the top of the Empire State Building' is a &%TimeDependentQuantity since its value depends on the time.") (=> (instance-of ?FUNCTION TimeDependentQuantity) (nth-domain ?FUNCTION 1 TimeMeasure)) (subclass-of UnitOfMeasure PhysicalQuantity) (documentation UnitOfMeasure "A standard of measurement for some dimension. For example, the &%Meter is a &%UnitOfMeasure for the dimension of length, as is the &%Inch. There is no intrisic property of a &%UnitOfMeasure that makes it primitive or fundamental; rather, a system-of-units (e.g. &%SystemeInternationalUnit) defines a set of orthogonal dimensions and assigns units for each.") (subclass-of SystemeInternationalUnit UnitOfMeasure) (documentation SystemeInternationalUnit "The &%Class of Systeme International (SI) units.") (subclass-of LengthMeasure ConstantQuantity) (subclass-of MassMeasure ConstantQuantity) (subclass-of TimeMeasure ConstantQuantity) (subclass-of ElectricCurrentMeasure FunctionQuantity) (subclass-of ThermodynamicTemperatureMeasure ConstantQuantity) (subclass-of LuminosityIntensityMeasure FunctionQuantity) (subclass-of AmountOfSubstanceMeasure ConstantQuantity) ;; A necessary &%PhysicalQuantity for what was previously known as ;; supplementary units in the SI system. (subclass-of IdentityMeasure ConstantQuantity) ;; Derived &%PhysicalQuantities that have units with special names and ;; symbols in the SI system. (subclass-of PlaneAngleMeasure IdentityMeasure) (subclass-of SolidAngleMeasure IdentityMeasure) (subclass-of FrequencyMeasure TimeDependentQuantity) (subclass-of ForceMeasure FunctionQuantity) (subclass-of PressureMeasure FunctionQuantity) (subclass-of EnergyMeasure FunctionQuantity) (subclass-of PowerMeasure FunctionQuantity) (subclass-of ElectricChargeMeasure TimeDependentQuantity) (subclass-of ElectricPotentialMeasure FunctionQuantity) (subclass-of CapacitanceMeasure FunctionQuantity) (subclass-of ElectricResistanceMeasure FunctionQuantity) (subclass-of ElectricConductanceMeasure FunctionQuantity) (subclass-of MagneticFluxMeasure FunctionQuantity) (subclass-of MagneticFluxDensityMeasure FunctionQuantity) (subclass-of InductanceMeasure FunctionQuantity) (subclass-of LuminousFluxMeasure FunctionQuantity) (subclass-of IlluminanceMeasure FunctionQuantity) (subclass-of ActivityMeasure TimeDependentQuantity) (subclass-of AbsorbedDoseMeasure FunctionQuantity) (subclass-of DoseEquivalentMeasure FunctionQuantity) (subclass-of CatalyticActivityMeasure FunctionQuantity) ;; Other &%PhysicalQuantities of interest outside SI. (subclass-of CurrencyMeasure ConstantQuantity) (subclass-of InformationMeasure ConstantQuantity) (instance-of MeasureFn BinaryFunction) (nth-domain MeasureFn 1 RealNumber) (nth-domain MeasureFn 2 UnitOfMeasure) (range MeasureFn ConstantQuantity) (documentation MeasureFn "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).") (=> (and (equal (MeasureFn ?NUMBER ?UNIT) ?QUANT) (subclass-of ?UNIT ?QUANTTYPE) (not (equal ?QUANTTYPE UnitOfMeasure))) (subclass-of ?QUANT ?QUANTTYPE)) (instance-of MagnitudeFn UnaryFunction) (nth-domain MagnitudeFn 1 ConstantQuantity) (range MagnitudeFn RealNumber) (documentation MagnitudeFn "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.") (equal (MagnitudeFn (MeasureFn ?NUMBER ?UNIT)) ?NUMBER) ;; Now the units of measure: ;; First base units for the SI system. No conversion functions are ;; provided for these units. ;; Length Base Unit (instance-of Meter LengthMeasure) (instance-of Meter SystemeInternationalUnit) (documentation Meter "SI &%LengthMeasure. Symbol: m. It is one of the base units in SI, and it is currently defined as follows: the &%Meter is the length of the path traveled by light in a vacuum during a time interval of 1/299792458 of a &%Second-Duration.") ;; Mass Base Unit (instance-of Kilogram MassMeasure) (instance-of Kilogram SystemeInternationalUnit) (documentation Kilogram "SI &%MassMeasure. Symbol: kg. It is one of the base units in SI (it is also the basic unit of mass in the MKS system), and it is equal to the mass of the international prototype of the &%Kilogram.") (equal (MeasureFn ?NUMBER Kilogram) (MeasureFn (MultiplicationFn ?NUMBER 1000) Gram)) ;; Time Base Unit (instance-of Second-Duration TimeMeasure-Duration) (instance-of Second-Duration SystemeInternationalUnit) (documentation Second-Duration "SI &%TimeMeasure-Duration. Symbol: s. It is one of the base units in SI, and it is currently defined as follows: the &%Second-Duration is the duration of 9192631770 periods of the radiation corresponding to the transition between the two hyperfine levels of the ground state of the cesium 133 atom.") ;; Electric Current Base Unit (instance-of Ampere ElectricCurrentMeasure) (instance-of Ampere SystemeInternationalUnit) (documentation Ampere "SI &%ElectricCurrentMeasure. Symbol: A. It is one of the base units in SI. It is defined as follows: the &%Ampere is that constant current which, if maintained in two straight parallel conductors of infinite length, of negligible circular cross-section, and placed 1 &%Meter apart in a vacuum, would produce between these conductors a force equal to 2*10^(-7) &%Newton per &%Meter of length.") ;; Thermodynamic Temperature Base Unit (instance-of Kelvin ThermodynamicTemperatureMeasure) (instance-of Kelvin SystemeInternationalUnit) (documentation Kelvin "SI &%ThermodynamicTemperatureMeasure. Symbol: K. It is one of the base units in SI (it is also a unit in the ITS system). It is defined as follows: the &%Kelvin is the fraction 1/273.16 of the thermodynamic temperature of the triple point of water.") ;; Amount Of Substance Base Unit (instance-of Mole AmountOfSubstanceMeasure) (instance-of Mole SystemeInternationalUnit) (documentation Mole "SI &%AmountOfSubstanceUnit. symbol: mol. It is one of the base units in SI. It is defined as follows: the &%Mole is the amount of substance of a system which contains as many elementary entities as there are atoms in 0.012 &%Kilograms of carbon 12. Note that, when this &%UnitOfMeasure is used, the elementary entities must be specified - they may be atoms, molecules, ions, electrons, etc. or groups of such particles.") ;; Luminosity Intensity Base Unit (instance-of Candela LuminosityIntensityMeasure) (instance-of Candela SystemeInternationalUnit) (documentation Candela "SI &%LuminosityIntensityMeasure. Symbol: cd. It is one of the base units in SI, and it is currently defined as follows: the &%Candela is the luminous intensity, in a given direction, of a source that emits monochromatic radiation of frequency 540*10^12 &%Hertz and that has a radiant intensity in that direction of 1/683 &%Watt per &%Steradian.") ;; The following are SI units that are multiples and submultiples of the ;; SI base units. (instance-of Centimeter LengthMeasure) (instance-of Centimeter UnitOfMeasure) (documentation Centimeter "Submultiple of &%Meter. Symbol: cm. It is the 100th part of a &%Meter") (equal (MeasureFn ?NUMBER Centimeter) (MeasureFn (MultiplicationFn ?NUMBER 0.01) Meter)) (instance-of Kilometer LengthMeasure) (instance-of Kilometer UnitOfMeasure) (documentation Kilometer "Multiple of &%Meter. Symbol: km. 1 &%Kilometer = 1000 &%Meters.") (equal (MeasureFn ?NUMBER Kilometer) (MeasureFn (MultiplicationFn ?NUMBER 1000) Meter)) (instance-of Gram MassMeasure) (instance-of Gram UnitOfMeasure) (documentation Gram "Submultiple of &%Kilogram. Symbol: g. 1 &%Kilogram = 1000 &%Grams.") (equal (MeasureFn ?NUMBER Gram) (MeasureFn (MultiplicationFn ?NUMBER 0.001) Kilogram)) (instance-of Nano-Second TimeMeasure-Duration) (instance-of Nano-Second UnitOfMeasure) (documentation Nano-Second "Submultiple of &%Second-Duration. Symbol: ns. A &%UnitOfMeasure equal to one billionth of a &%Second-Duration.") (equal (MeasureFn ?NUMBER Nano-Second) (MeasureFn (MultiplicationFn ?NUMBER 1.0E-9) Second)) (instance-of Pico-Second TimeMeasure-Duration) (instance-of Pico-Second UnitOfMeasure) (documentation Pico-Second "Submultiple of &%Second-Duration. Symbol: ps. A &%UnitOfMeasure equal to one trillionth of a &%Second-Duration.") (equal (MeasureFn ?NUMBER Pico-Second) (MeasureFn (MultiplicationFn ?NUMBER 1.0E-12) Second-Duration)) (instance-of Milli-Ampere ElectricCurrentMeasure) (instance-of Milli-Ampere UnitOfMeasure) (documentation Milli-Ampere "Submultiple of &%Ampere. Symbol: mA. A unit of electrical current equal to one thousandth of an &%Ampere.") (equal (MeasureFn ?NUMBER Milli-Ampere) (MeasureFn (MultiplicationFn ?NUMBER .001) Ampere)) (instance-of Nano-Ampere ElectricCurrentMeasure) (instance-of Nano-Ampere ElectricCurrentMeasure) (documentation Nano-Ampere "Submultiple of &%Ampere. Symbol: nA. A unit of electrical current equal to one billionth of an &%Ampere.") (equal (MeasureFn ?NUMBER Nano-Ampere) (MeasureFn (MultiplicationFn ?NUMBER 1.0E-9) Ampere)) (instance-of Pico-Ampere ElectricCurrentMeasure) (instance-of Pico-Ampere UnitOfMeasure) (documentation Pico-Ampere "Submultiple of &%Ampere. Symbol: pA. A unit of electrical current equal to one trillionth of an &%Ampere.") (equal (MeasureFn ?NUMBER Pico-Ampere) (MeasureFn (MultiplicationFn ?NUMBER 1.0E-12) Ampere)) ;; What follows are derived SI units with special names and symbols ;; (multiples and submultiples are together since they represent ;; quantities of the same kind). ;; Plane angle unit (instance-of Radian PlaneAngleMeasure) (instance-of Radian SystemeInternationalUnit) (documentation Radian "SI &%PlaneAngleMeasure. Symbol: rad. It is the angle of a circle subtended by an arc equal in length to the circle's radius. Another definition is: the plane angle between two radii of a circle which cut off on the circumference an arc equal in length to the radius. &%Radian = m/m = 1.") ;; Solid angle unit (instance-of Steradian SolidAngleMeasure) (instance-of Steradian SystemeInternationalUnit) (documentation Steradian "SI &%SolidAngleMeasure. Symbol: sr. It is the solid angle of a sphere subtended by a portion of the surface whose area is equal to the square of the sphere's radius. Another definition is: the solid angle which, having its vertex in the center of the sphere, cuts off an area of the surface of the sphere equal to that of a square with sides of length equal to the radius of the sphere. &%Steradian = m^2/m^2 = 1.") ;; Frequency units (instance-of Hertz FrequencyMeasure) (instance-of Hertz SystemeInternationalUnit) (documentation Hertz "SI &%FrequencyMeasure. Symbol: Hz. It is the number of cycles per second. &%Hertz = s^(-1).") ;; Note: &%Hertz does not have a conversion function. (instance-of Giga-Hertz FrequencyMeasure) (instance-of Giga-Hertz UnitOfMeasure) (documentation Giga-Hertz "Multiple of &%Hertz. Symbol: GHz. A &%FrequencyMeasure equal to one billion times per &%Second-Duration. 1 &%Giga-Hertz = 10^9 Hertz.") (equal (MeasureFn ?NUMBER Giga-Hertz) (MeasureFn (MultiplicationFn ?NUMBER 1.0E9) Hertz)) (instance-of Kilo-Hertz FrequencyMeasure) (instance-of Kilo-Hertz UnitOfMeasure) (documentation Kilo-Hertz "Multiple of &%Hertz. Symbol: kHz. A &%FrequencyMeasure equal to one thousand times per &%Second-Duration. 1 &%Kilo-Hertz = 10^3 Hertz.") (equal (MeasureFn ?NUMBER Kilo-Hertz) (MeasureFn (MultiplicationFn ?NUMBER 1000) Hertz)) (instance-of Mega-Hertz FrequencyMeasure) (instance-of Mega-Hertz UnitOfMeasure) (documentation Mega-Hertz "Multiple of &%Hertz. Symbol: MHz. A &%FrequencyMeasure equal to one million times per &%Second-Duration. 1 &%Megahertz = 10^6 &%Hertz.") (equal (MeasureFn ?NUMBER Mega-Hertz) (MeasureFn (MultiplicationFn ?NUMBER 1.0E6) Hertz)) ; Force Unit (instance-of Newton ForceMeasure) (instance-of Newton SystemeInternationalUnit) (documentation Newton "SI &%ForceMeasure. Symbol: N. It is that force which gives to a mass of 1 &%Kilogram an acceleration of 1 &%Meter per &%Second-Duration. &%Newton = m*kg*s^(-2).") ; Pressure unit (instance-of Pascal PressureMeasure) (instance-of Pascal SystemeInternationalUnit) (documentation Pascal "SI &%PressureMeasure. Symbol:Pa. It is the pressure of one &%Newton per square &%Meter. &%Pascal = N/m^2 = m^(-1)*kg*s^(-2).") (instance-of Mega-Pascal PressureMeasure) (instance-of Mega-Pascal UnitOfMeasure) (documentation Mega-Pascal "Multiple of &%Pascal. Symbol: MPa. A unit of pressure equal to one million &%Pascal. 1 &%Mega-Pascal = 10^6 Pa.") (equal (MeasureFn ?NUMBER Mega-Pascal) (MeasureFn (MultiplicationFn ?NUMBER 1.0E6) Pascal)) ; Energy Unit (instance-of Joule EnergyMeasure) (instance-of Joule SystemeInternationalUnit) (documentation Joule "SI &%EnergyMeasure. Symbol: J. It is the work done when the point of application of 1 &%Newton is displaced a distance of 1 &%Meter in the direction of the force. &%Joule = N*m = m^2*kg*s^(-2).") ; Power Units (instance-of Watt PowerMeasure) (instance-of Watt SystemeInternationalUnit) (documentation Watt "SI &%PowerMeasure. Aymbol: W. A &%UnitOfMeasure that measures power, i.e. energy produced or expended divided by &%TimeMeasure-Duration. It is the power which gives rise to the production of energy (or work) at the rate of one &%Joule per &%Second-Duration. &%Watt = J/s = m^2*kg*s^(-3).") ;;; Note: According to SI one should not use the expression "per unit of." (instance-of Kilo-Watt PowerMeasure) (instance-of Kilo-Watt UnitOfMeasure) (documentation Kilo-Watt "Multiple of &%Watt. Symbol: kW. A &%UnitOfMeasure that measures power, i.e. energy produced or expended divided by &%TimeMeasure-Duration. 1 &%Kilo-Watt = 1000 &%Watts.") (equal (MeasureFn ?NUMBER Kilo-Watt) (MeasureFn (MultiplicationFn ?NUMBER 1000) Watt)) ; Electric Charge Units (instance-of Coulomb ElectricChargeMeasure) (instance-of Coulomb SystemeInternationalUnit) (nth-domain Coulomb 1 Second-Duration) (range Coulomb Ampere) (documentation Coulomb "SI &%ElectricChargeMeasure. Symbol: C. It is the quantity of electric charge transported through a cross section of a conductor in an electric circuit during each &%Second-Duration by a current of 1 &%Ampere. &%Coulomb = s*A.") ; Electric Potential Units (instance-of Volt ElectricPotentialMeasure) (instance-of Volt SystemeInternationalUnit) (documentation Volt "SI &%ElectricPotentialMeasure. Symbol: V. It is the difference of electric potential between two points of a conducting wire carrying a constant current of 1 &%Ampere, when the power dissipated between these points is equal to 1 &%Watt. &%Volt = W/A = m^2*kg*s^(-3)*A^(-1).") (instance-of Micro-Volt ElectricPotentialMeasure) (instance-of Micro-Volt UnitOfMeasure) (documentation Micro-Volt "Submultiple of &%Volt. Symbol: mV. A &%UnitOfMeasure for measuring electrical potential equal to one millionth of a volt. 1 &%Micro-Volt = 10^(-6) &%Volt.") (equal (MeasureFn ?NUMBER Micro-Volt) (MeasureFn (MultiplicationFn ?NUMBER 0.000001) Volt)) (instance-of Milli-Volt ElectricPotentialMeasure) (instance-of Milli-Volt UnitOfMeasure) (documentation Milli-Volt "Submultiple of &%Volt. Symbol: mV. A unit of electrical potential equal to one thousandth of a &%Volt. 1 &%Milli-Volt = 10^(-3) &%Volt.") (equal (MeasureFn ?NUMBER Milli-Volt) (MeasureFn (MultiplicationFn ?NUMBER .001) Volt)) ; Capacitance Units (instance-of Farad CapacitanceMeasure) (instance-of Farad SystemeInternationalUnit) (documentation Farad "SI &%CapacitanceMeasure. Symbol: F. It is the capacitance of a capacitator between the plates of which there appears a difference of potential of 1 &%Volt when it is charged by a quantity of electricity equal to 1 &%Coulomb. &%Farad = C/V = m^(-2)*kg(-1)*s^4*A^2.") ;Electric Resistance Units (instance-of Ohm ElectricResistanceMeasure) (instance-of Ohm SystemeInternationalUnit) (documentation Ohm "SI &%ElectricResistanceMeasure. It is the electric resistance between two points of a conductor when a constant difference of potential of 1 &%Volt, applied between these two points, produces in this conductor a current of 1 &%Ampere, this conductor not being the force of any electromotive force. &%Ohm = V/A = m^2*kg*s^(-3)*A^(-2).") (instance-of Mega-Ohm ElectricResistanceMeasure) (instance-of Mega-Ohm UnitOfMeasure) (documentation Mega-Ohm "Multiple of &%Ohm. Electric resistance unit equal to one million &%Ohm. 1 &%Mega-Ohm = 10^(6) &%Ohms.") (equal (MeasureFn ?NUMBER Mega-Ohm) (MeasureFn (MultiplicationFn ?NUMBER 1.0E6) Ohm)) (instance-of Micro-Ohm ElectricResistanceMeasure) (instance-of Micro-Ohm UnitOfMeasure) (documentation Micro-Ohm "Submultiple of &%Ohm. Electric resistance unit equal to the millionth part of an &%Ohm. 1 &%Micro-Ohm = 10^(-6) &%Ohms.") (equal (MeasureFn ?NUMBER Micro-Ohm) (MeasureFn (MultiplicationFn ?NUMBER 0.000001) Ohm)) ; Electric Conductance Units (instance-of Siemens ElectricConductanceMeasure) (instance-of Siemens SystemeInternationalUnit) (documentation Siemens "SI &%ElectricConductanceMeasure. Symbol: S. In the case of direct current, the conductance in &%Siemens is the reciprocal of the resistance in &%Ohms; in the case of alternating current, it is the reciprocal of the impedance in ohms. siemens = A/V = m^(-2)*kg(-1)*s^(3)*A^2.") ; Magnetic Flux Units (instance-of Weber MagneticFluxMeasure) (instance-of Weber SystemeInternationalUnit) (documentation Weber "SI &%MagneticFluxMeasure. Symbol: Wb. It is the magnetic flux which, linking a circuit of one turn, produces in it an electromotive force of 1 &%Volt as it is reduced to zero at a uniform rate in 1 &%Second-Duration. &%Weber = V*s = m^2*kg*s^(-2)*A^(-1)." ) ; Magnetic Flux Density Units (instance-of Tesla MagneticFluxDensityMeasure) (instance-of Tesla SystemeInternationalUnit) (documentation Tesla "SI &%MagneticFluxDensityMeasure. Symbol: T. One &%Tesla equals one &%Weber per square &%Meter. &%Tesla = Wb/m^2 = kg*s^(-2)*A^(-1).") ; Inductance Units (instance-of Henry InductanceMeasure) (instance-of Henry SystemeInternationalUnit) (documentation Henry "SI &%InductanceMeasure. Symbol: H. One &%Henry is equivalent to one &%Volt divided by one &%Ampere per &%Second-Duration. If a current changing at the rate of one &%Ampere per &%Second-Duration induces an electromotive force of one &%Volt, the circuit has an inductance of one &%Henry. &%Henry = Wb/A = m^2*kg*s^(-2)*A^(-2).") ; Celsius Temperature unit (instance-of Celcius ThermodynamicTemperatureMeasure) (instance-of Celcius SystemeInternationalUnit) (documentation Celcius "A &%ThermodynamicTemperatureMeasure. &%Kelvin differs from the &%Celcius scale in that the triple point of water is defined to be 273.16 degrees &%Kelvin while it is 0 degrees &%Celcius. The boiling point of water is 100 degrees &%Celcius. The magnitudes of intervals in the two scales are the same. By definition the conversion constant is 273.15") (equal (MeasureFn ?NUMBER Celcius) (MeasureFn (SubtractionFn ?NUMBER 273.15) Kelvin)) ; Luminous Flux Units (instance-of Lumen LuminousFluxMeasure) (instance-of Lumen SystemeInternationalUnit) (documentation Lumen "SI &%LuminousFluxMeasure. Symbol: lm. It is the amount streaming outward through one solid angle of 1 &%Steradian from a uniform point source having an intensity of one &%Candela. &%Lumen = cd*sr = cd * 1.") ; Illuminance Units (instance-of Lux IlluminanceMeasure ) (instance-of Lux SystemeInternationalUnit) (documentation Lux "SI &%IlluminanceMeasure. Symbol: lx. It is the amount of illumination provided when one &%Lumen is evenly distributed over an area of 1 square &%Meter. This is also equivalent to the illumination that would exist on a surface all points of which are one &%Meter from a point source of one &%Candela. &%Lux = lm/m^2 = m^(-2)*cd.") ; Activity Units (instance-of Becquerel ActivityMeasure) (instance-of Becquerel SystemeInternationalUnit) (documentation Becquerel "SI &%ActivityMeasure. Symbol: Bq. It measures the amount of radioactivity contained in a given sample of matter. It is that quantity of a radioactive element in which there is one atomic disintegration per &%Second-Duration. &%Becquerel = s^(-1).") ; Absorbed Dose Units (instance-of Gray AbsorbedDoseMeasure) (instance-of Gray SystemeInternationalUnit) (documentation Gray "SI &%AbsorbedDoseMeasure. Symbol: Gy. It measures the dose of radiation absorbed in living tissue. It is equal approximately to the absorbed dose delivered when the energy per unit mass imparted to matter by ionizing radiation is 1 &%Joule per &%Kilogram. &%Gray = J/kg = m^2*s^(-2).") ; Dose Equivalent Units (instance-of Sievert DoseEquivalentMeasure) (instance-of Sievert SystemeInternationalUnit) (documentation Sievert "SI &%DoseEquivalentMeasure. Symbol: Sv. It is a unit of biologic dose of ionizing radiation. The &%Sievert makes it possible to normalize doses of different types of radiation. It takes into account the relative biologic effectiveness of ionizing radiation, since each form of such radiation--e.g., X rays, gamma rays, neutrons-- has a slightly different effect on living tissue for a given absorbed dose. The dose equivalent of a given type of radiation (in &%Sievert) is the dose of the radiation in &%Gray multiplied by a quality factor that is based on the relative biologic effectiveness of the radiation. Accordingly, one &%Sievert is generally defined as the amount of radiation roughly equivalent in biologic effectiveness to one &%Gray of gamma radiation. &%Sievert = J/kg = m^2*s^(-2)") ; Catalytic Activity Units (instance-of Katal CatalyticActivityMeasure) (instance-of Katal SystemeInternationalUnit) (documentation Katal "SI &%CatalyticActivityMeasure. symbol: kat.") ; Units that are accepted for -use- with SI (instance-of Day-Duration TimeMeasure-Duration) (instance-of Day-Duration UnitOfMeasure) (documentation Day-Duration "Time unit. 1 day = 24 hours.") (equal (MeasureFn ?NUMBER Day-Duration) (MeasureFn (MultiplicationFn ?NUMBER 24) Hour-Duration)) (instance-of Hour-Duration TimeMeasure-Duration) (instance-of Hour-Duration UnitOfMeasure) (documentation Hour-Duration "Time unit. 1 hour = 60 minutes.") (equal (MeasureFn ?NUMBER Hour-Duration) (MeasureFn (MultiplicationFn ?NUMBER 60) Minute-Duration)) (instance-of Minute-Duration TimeMeasure-Duration) (instance-of Minute-Duration UnitOfMeasure) (documentation Minute-Duration "Time unit. 1 minute = 60 seconds. ") (equal (MeasureFn ?NUMBER Minute-Duration) (MeasureFn (MultiplicationFn ?NUMBER 60) Second-Duration)) (instance-of Month-Duration TimeMeasure-Duration) (instance-of Month-Duration UnitOfMeasure) (documentation Month-Duration "Time unit. 1/12th of a year.") (instance-of Year-Duration TimeMeasure-Duration) (instance-of Year-Duration UnitOfMeasure) (documentation Year-Duration "Time unit. one calendar year. 1 year = 365 days = 31536000 seconds.") (equal (MeasureFn ?NUMBER Year-Duration) (MeasureFn (MultiplicationFn ?NUMBER 365) Day-Duration)) ;; What follows are units that are also accepted for use with SI. The ;; SI equivalents for these units are obtained experimentally. (instance-of Amu MassMeasure) (instance-of Amu UnitOfMeasure) (documentation Amu "Atomic mass unit. Symbol: u. It is the mass of the twelfth part of an atom of the Carbon 12 isotope. ") (equal (MeasureFn ?NUMBER Amu) (MeasureFn (MultiplicationFn ?NUMBER 1.6605402E-27) Kilogram)) (instance-of ElectronVolt EnergyMeasure) (instance-of ElectronVolt UnitOfMeasure) (documentation ElectronVolt "The &%ElectronVolt is an &%EnergyMeasure. Symbol: eV. It is the kinetic energy acquired by an electron in passing through a potential difference of 1 &%Volt in a vacuum.") (equal (MeasureFn ?NUMBER ElectronVolt) (MeasureFn (MultiplicationFn ?NUMBER 1.60217733E-19) Joule)) ;; The following units have been temporarily accepted for use with ;; SI units. (instance-of Angstrom LengthMeasure) (instance-of Angstrom UnitOfMeasure) (documentation Angstrom "The &%Angstrom is a &%LengthMeasure. 1 &%Angstrom = 10^(-10) m") (equal (MeasureFn ?NUMBER Angstrom) (MeasureFn (MultiplicationFn ?NUMBER 1.0E-10) Meter)) ;; The following units are unacceptable in SI but are part of other ;; systems of measurement that are widely used. ;; More Length units (instance-of Foot LengthMeasure) (instance-of Foot UnitOfMeasure) (documentation Foot "English length unit of feet.") (equal (MeasureFn ?NUMBER Foot) (MeasureFn (MultiplicationFn ?NUMBER 0.3048) Meter)) (instance-of Inch LengthMeasure) (instance-of Inch UnitOfMeasure) (documentation Inch "English length unit of inches.") (equal (MeasureFn ?NUMBER Inch) (MeasureFn (MultiplicationFn ?NUMBER 0.0254) Meter)) (instance-of Mile LengthMeasure) (instance-of Mile UnitOfMeasure) (documentation Mile "English length unit of miles.") (equal (MeasureFn ?NUMBER Mile) (MeasureFn (MultiplicationFn ?NUMBER 1609.344) Meter)) ;; More Mass units (instance-of AtomGram MassMeasure) (instance-of AtomGram UnitOfMeasure) (documentation AtomGram "&%MassMeasure that is also known as the gram-atom. Defined as the mass in grams of 1 &%Mole of pure substance. For example, 1 &%AtomGram of Carbon 12 will be 12 &%Grams of pure Carbon 12. 2 &%AtomGrams of the same substance will be 24 &%Grams of it. This is an unusual unit in that it is essentially 1 &%Mole of 'stuff' measured in grams, so that the actual value (i.e. mass) depends on the type of substance.") (instance-of Pound-Mass MassMeasure) (instance-of Pound-Mass UnitOfMeasure) (documentation Pound-Mass "English mass unit of pounds.") (equal (MeasureFn ?NUMBER Pound-Mass) (MeasureFn (MultiplicationFn ?NUMBER 0.45359237) Kilogram)) (instance-of Slug MassMeasure) (instance-of Slug UnitOfMeasure) (documentation Slug "English mass unit of slugs.") (equal (MeasureFn ?NUMBER Slug) (MeasureFn (MultiplicationFn ?NUMBER 14.59390) Kilogram)) ;; More Thermodynamic Temperature units (instance-of Rankine ThermodynamicTemperatureMeasure) (instance-of Rankine UnitOfMeasure) (documentation Rankine "A &%ThermodynamicTemperatureMeasure. Note that 0 degrees &%Rankine is the same as the absolute zero (i.e. 0 degrees &%Kelvin).") (equal (MeasureFn ?NUMBER Rankine) (MeasureFn (MultiplicationFn ?NUMBER 1.8) Kelvin)) ;; More Force units (instance-of Pound-Force ForceMeasure) (instance-of Pound-Force UnitOfMeasure) (documentation Pound-Force "English pound of force. The conversion factor depends on the local value of the acceleration of free fall. A mean value is used in the conversion axiom associated with this constant.") (equal (MeasureFn ?NUMBER Pound-Force) (MeasureFn (MultiplicationFn ?NUMBER 4.448222) Newton)) ;; More Energy units (instance-of Calorie EnergyMeasure) (instance-of Calorie UnitOfMeasure) (documentation Calorie "A &%Calorie is an &%EnergyMeasure.") (equal (MeasureFn ?NUMBER Calorie) (MeasureFn (MultiplicationFn ?NUMBER 4.1868) Joule)) (instance-of BritishThermalUnit EnergyMeasure) (instance-of BritishThermalUnit UnitOfMeasure) (documentation BritishThermalUnit "An &%EnergyMeasure.") (equal (MeasureFn ?NUMBER BritishThermalUnit) (MeasureFn (MultiplicationFn ?NUMBER 1055.05585262) Joule)) ;; More plane angle units (instance-of AngularDegree PlaneAngleMeasure) (instance-of AngularDegree UnitOfMeasure) (documentation AngularDegree "A &%PlaneAngleMeasure.") (equal (MeasureFn ?NUMBER AngularDegree) (MeasureFn (MultiplicationFn ?NUMBER (DivisionFn Pi-TheNumber 180)) Radian)) ; Other interesting units of measure ; Currency units (instance-of Dollar-UnitedStates CurrencyMeasure) (instance-of Dollar-UnitedStates UnitOfMeasure) (documentation Dollar-UnitedStates "A &%CurrencyMeasure.") (instance-of Cent-UnitedStates CurrencyMeasure) (instance-of Cent-UnitedStates UnitOfMeasure) (documentation Cent-UnitedStates "A &%CurrencyMeasure. 1 US cent = 10^-2 US dollars.") (equal (MeasureFn ?NUMBER Cent-UnitedStates) (MeasureFn (MultiplicationFn ?NUMBER .01) Dollar-UnitedStates)) ; Information units (instance-of Bit InformationMeasure) (instance-of Bit UnitOfMeasure) (documentation Bit "One &%Bit of information. A one or a zero.") (instance-of Byte InformationMeasure) (instance-of Byte UnitOfMeasure) (documentation Byte "One &%Byte of information. A &%Byte is eight &%Bits.") (equal (MeasureFn ?NUMBER Byte) (MeasureFn (MultiplicationFn ?NUMBER 8) Bit)) (instance-of Kilo-Byte InformationMeasure) (instance-of Kilo-Byte UnitOfMeasure) (documentation Kilo-Byte "One &%Kilo-Byte (K) of information. One &%Kilo-Byte is 1024 &%Bytes. Note that this sense of 'kilo' is different from the one accepted in the SI system.") (equal (MeasureFn ?NUMBER Kilo-Byte) (MeasureFn (MultiplicationFn ?NUMBER 1024) Byte)) (instance-of Mega-Byte InformationMeasure) (instance-of Mega-Byte UnitOfMeasure) (documentation Mega-Byte "One &%Mega-Byte (MB) of information. One &%Mega-Byte is 1024 &%Kilo-Bytes. Note that this sense of 'mega' is different from the one accepted in the SI system.") (equal (MeasureFn ?NUMBER Mega-Byte) (MeasureFn (MultiplicationFn ?NUMBER 1024) Kilo-Byte)) ;; The following content was inspired by the Quantities ontology ;; developed by ITBM-CNR. (instance-of measure AsymmetricRelation) (nth-domain measure 1 Object) (nth-domain measure 2 ConstantQuantity) (documentation measure "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.") (subrelation-of age measure) (nth-domain age 2 TimeMeasure-Duration) (singleValued age 2) (documentation age "Simply relates an &%Object to a &%ConstantQuantity specifying the age of the &%Object.") (subrelation-of length measure) (nth-domain length 2 LengthMeasure) (documentation length "&%BinaryRelation that is used to state the measure of an &%Object from one point to another point along its surface.") (subrelation-of width length) (singleValued width 2) (documentation width "&%BinaryRelation that is used to state the measure of an &%Object from side to side at its widest span.") (subrelation-of diameter width) (documentation diameter "&%BinaryRelation that is used to state the measure of a circular &%Object from side to side.") (subrelation-of height length) (singleValued height 2) (documentation height "&%BinaryRelation that is used to state the measure of an &%Object from its lowest point to its highest point.") (instance-of distance SpatialRelation) (instance-of distance TernaryRelation) (nth-domain distance 1 Physical) (nth-domain distance 2 Physical) (nth-domain distance 3 LengthMeasure) (singleValued distance 3) (documentation distance "(&%distance ?OBJ1 ?OBJ2 ?QUANT) means that the shortest distance between the two objects ?OBJ1 and ?OBJ2 is ?QUANT.") (instance-of larger SpatialRelation) (instance-of larger TransitiveRelation) (instance-of larger IrreflexiveRelation) (nth-domain larger 1 Object) (nth-domain larger 2 Object) (documentation larger "(&%larger ?OBJ1 ?OBJ2) simply means that ?OBJ1 is larger, along some physical dimension, than ?OBJ2.") (=> (larger ?OBJ1 ?OBJ2) (exists (?QUANT1 ?QUANT2) (and (measure ?OBJ1 ?QUANT1) (measure ?OBJ2 ?QUANT2) (greaterThan ?QUANT1 ?QUANT2)))) (instance-of smaller SpatialRelation) (instance-of smaller TransitiveRelation) (instance-of smaller IrreflexiveRelation) (nth-domain smaller 1 Object) (nth-domain smaller 2 Object) (inverse smaller larger) (documentation smaller "(&%smaller ?OBJ1 ?OBJ2) simply means that ?OBJ1 is smaller, along some physical dimension, than ?OBJ2.") (subrelation-of monetaryValue measure) (nth-domain monetaryValue 2 CurrencyMeasure) (singleValued monetaryValue 2) (documentation monetaryValue "A &%BinaryRelation that associates an &%Object with its value expressed as an instance of &%CurrencyMeasure.") ;; END FILE ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ORGANIC OBJECTS AND PROCESSES ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; The following formulas incorporate the content in the Natural-Kinds ;; ontology developed by ITBM-CNR. This content is essentially a set of ;; high-level biological categories. (subclass-of Plant Organism) (documentation Plant "An &%Organism having cellulose &%CellWalls, growing by synthesis of &%InorganicSubstances, generally distinguished by the presence of chlorophyll, and lacking the power of locomotion.") (=> (instance-of ?PLANT Plant) (exists (?COLOR ?PROC) (and (part-of ?COLOR ?PLANT) (instance-of ?COLOR Pigment) (result ?COLOR ?PROC) (instance-of ?PROC Photosynthesis)))) (subclass-of Animal Organism) (disjoint Plant Animal) (documentation Animal "An &%Organism with eukaryotic &%Cells, and lacking stiff cell walls, plastids, and photosynthetic &%Pigments.") (=> (instance-of ?ANIMAL Animal) (exists (?CELL ?WALL) (and (component-of ?CELL ?ANIMAL) (instance-of ?CELL Cell) (component-of ?WALL ?CELL) (instance-of ?WALL CellWall-NonRigid)))) (subclass-of Microorganism Organism) (documentation Microorganism "An &%Organism that can be seen only with the aid of a microscope.") (subclass-of Archaeon Microorganism) (documentation Archaeon "&%Archaea are characterized by: 1. the presence of characteristic tRNAs and ribosomal RNAs, 2. the absence of peptidoglycan cell walls, 3. the presence of ether-linked lipids built from branched-chain subunits, and 4. their occurrence in unusual habitats. While archaea resemble &%Bacteria in morphology and genomic organization, they resemble eukarya in their method of genomic replication.") (subclass-of Bacterium Microorganism) (documentation Bacterium "A small, typically one-celled, prokaryotic &%Microorganism.") (=> (instance-of ?BACTERIUM Bacterium) (cardinality (KappaFn ?CELL (and (component-of ?CELL ?BACTERIUM) (instance-of ?CELL Cell))) 1)) (=> (and (instance-of ?BACTERIUM Bacterium) (lives-in ?BACTERIUM ?OBJ)) (instance-of ?OBJ OrganicObject)) (subclass-of Virus Microorganism) (documentation Virus "An &%Organism consisting of a core of a single nucleic acid enclosed in a protective coat of protein. A virus may replicate only inside a host living cell. A virus exhibits some but not all of the usual characteristics of living things.") (=> (instance-of ?VIRUS Virus) (cardinality (KappaFn ?MOL (and (component-of ?MOL ?VIRUS) (instance-of ?MOL Molecule))) 1)) (=> (and (instance-of ?VIRUS Virus) (lives-in ?VIRUS ?OBJ)) (instance-of ?OBJ OrganicObject)) (=> (and (instance-of ?VIRUS Virus) (instance-of ?PROC Replication) (effector-of ?PROC ?VIRUS)) (exists (?CELL) (and (located-at ?PROC ?CELL) (instance-of ?CELL Cell)))) (subclass-of Chlamydia Microorganism) (documentation Chlamydia "An &%Organism which is intermediate in size and complexity between a &%Virus and a &%Bacterium and which is parasitic within the cells of &%Insects and &%Ticks.") (=> (and (instance-of ?CHLAMYD Chlamydia) (lives-in ?CHLAMYD ?OBJ)) (instance-of ?OBJ OrganicObject)) (=> (instance-of ?CHLAMYD Chlamydia) (exists (?CELL ?ANIMAL) (and (lives-in ?CHLAMYD ?CELL) (instance-of ?CELL Cell) (component-of ?CELL ?ANIMAL) (or (instance-of ?ANIMAL Insect) (instance-of ?ANIMAL Tick))))) (subclass-of Vertebrate Animal) (documentation Vertebrate "An &%Animal which has a &%SpinalColumn.") (=> (instance-of ?VERT Vertebrate) (exists (?SPINE) (and (component-of ?SPINE ?VERT) (instance-of ?SPINE SpinalColumn)))) (subclass-of Invertebrate Animal) (disjoint Invertebrate Vertebrate) (documentation Invertebrate "An &%Animal which has no &%SpinalColumn.") (subclass-of Arthropod Invertebrate) (documentation Arthropod "A &%Class of &%Invertebrate that includes &%Arachnids and &%Insects.") (subclass-of Arachnid Arthropod) (documentation Arachnid "A &%Class of &%Arthropods that includes &%Ticks and &%Spiders.") (subclass-of Spider Arachnid) (documentation Spider "A &%Class of &%Arachnids characterized by an unsegmented abdomen, poisonous fangs, and an ability to spin thread.") (subclass-of Tick Arachnid) (documentation Tick "A &%Class of &%Arachnids that attach themselves to instances of &%Vertebrate-WarmBlooded and feed off of their &%Blood.") (subclass-of Insect Arthropod) (documentation Insect "A &%Class of &%Arthropods that is distinguished by its body appearance.") (subclass-of Vertebrate-ColdBlooded Vertebrate) (documentation Vertebrate-ColdBlooded "&%Vertebrates whose body temperature is not internally regulated.") (subclass-of Vertebrate-WarmBlooded Vertebrate) (disjoint Vertebrate-WarmBlooded Vertebrate-ColdBlooded) (documentation Vertebrate-WarmBlooded "Vertebrates whose body temperature is internally regulated.") (subclass-of Alga Plant) (documentation Alga "A chiefly aquatic plant that contains chlorophyll, but does not form embryos during development and lacks vascular tissue.") (=> (instance-of ?ALGA Alga) (exists (?WATER) (and (lives-in ?ALGA ?WATER) (instance-of ?WATER Water)))) (subclass-of Amphibian Vertebrate-ColdBlooded) (disjoint Amphibian Reptile) (documentation Amphibian "A cold-blooded, smooth-skinned &%Vertebrate which characteristically hatches as an aquatic larva, breathing by gills. When mature, the &%Amphibian breathes with &%Lungs.") (subclass-of Bird Vertebrate-WarmBlooded) (disjoint Bird Mammal) (documentation Bird "A &%Vertebrate having a constant body temperature and characterized by the presence of feathers.") (subclass-of Fish Vertebrate-ColdBlooded) (disjoint Fish Reptile) (documentation Fish "A cold-blooded aquatic &%Vertebrate characterized by fins and breathing by gills. Included here are &%Fish having either a bony skeleton, such as a perch, or a cartilaginous skeleton, such as a shark. Also included are those &%Fish lacking a jaw, such as a lamprey or hagfish.") (=> (instance-of ?FISH Fish) (exists (?WATER) (and (lives-in ?FISH ?WATER) (instance-of ?WATER Water)))) (subclass-of Fungus Plant) (documentation Fungus "A eukaryotic &%Organism characterized by the absence of chlorophyll and the presence of a &%CellWall-Rigid. Included here are both slime molds and true fungi such as yeasts, molds, mildews, and mushrooms.") (=> (instance-of ?FUNGUS Fungus) (exists (?WALL) (and (component-of ?WALL ?FUNGUS) (instance-of ?WALL CellWall-Rigid)))) (=> (and (instance-of ?FUNGUS Fungus) (lives-in ?FUNGUS ?OBJ)) (instance-of ?OBJ OrganicObject)) (subclass-of Mammal Vertebrate-WarmBlooded) (documentation Mammal "A &%Vertebrate having a constant body temperature and characterized by the presence of hair, mammary glands, and sweat glands.") (subclass-of Primate Mammal) (documentation Primate "The &%Class of &%Mammals which are &%Primates.") (subclass-of Human Primate) (subclass-of Human Person) (documentation Human "Modern man, the only remaining species of the Homo genus. If one wants to describe a &%Human from the point of view of occupational, social status, etc., then a subclass of &%Person should be used.") (subclass-of Reptile Vertebrate-ColdBlooded) (documentation Reptile "A &%Vertebrate-ColdBlooded having an external covering of scales or horny plates. &%Reptiles breathe by means of &%Lungs and generally lay eggs.") ;; The following formulas cover biologically related &%Classes under ;; &%Substance. (subclass-of BiologicallyActiveSubstance Substance) (partition BiologicallyActiveSubstance ToxicSubstance PharmacologicSubstance Nutrient) (documentation BiologicallyActiveSubstance "A &%Substance that is capable of inducing a change in the structure or functioning of an &%Organism.") (subclass-of ToxicSubstance BiologicallyActiveSubstance) (documentation ToxicSubstance "A &%BiologicallyActiveSubstance of concern because of its potentially hazardous or toxic effects. This would include most drugs of abuse, as well as agents that require special handling because of their toxicity. Most pharmaceutical agents, although potentially harmful, are excluded here and are assigned to the sibling &%Class &%PharmacologicSubstance.") (subclass-of PharmacologicSubstance BiologicallyActiveSubstance) (documentation PharmacologicSubstance "A &%BiologicallyActiveSubstance used in the treatment, diagnosis, prevention or analysis of normal and abnormal body function. This includes &%OrganicSubstances that occur naturally in the body and are administered therapeutically.") (subclass-of Nutrient BiologicallyActiveSubstance) (documentation Nutrient "A &%BiologicallyActiveSubstance produced or required by an &%Organism, of primary interest because of its role in the biologic functioning of the &%Organism.") (subclass-of Protein Nutrient) (documentation Protein "A Nutrient made up of amino acids joined by peptide bonds.") (subclass-of Enzyme Protein) (documentation Enzyme "A 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.") (subclass-of Vitamin Nutrient) (documentation Vitamin "A &%BiologicallyActiveSubstance, usually an &%OrganicSubstance, 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.") (subclass-of BodySubstance OrganicSubstance) (documentation BodySubstance "Extracellular material and mixtures of cells and extracellular material that are produced, excreted or accreted by the body. Included here are &%OrganicSubstances such as saliva, dental enamel, sweat, and gastric acid.") (subclass-of Hormone BodySubstance) (documentation Hormone "In &%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 &%PharmacologicSubstance. &%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.") (subclass-of Blood BodySubstance) (documentation Blood "A fluid present in &%Animals that transports &%Nutrients to and waste products away from various &%BodyParts.") (subclass-of Pigment BodySubstance) (documentation Pigment "A coloring that is present in the &%Cells of &%Organisms.") (=> (instance-of ?COLOR Pigment) (exists (?ORGANISM) (and (instance-of ?ORGANISM Organism) (part-of ?COLOR ?ORGANISM)))) (subclass-of ToxicOrganism Organism) (documentation ToxicOrganism "The &%Class of &%Organisms which are poisonous to other &%Organisms.") (=> (instance-of ?ORGANISM ToxicOrganism) (exists (?SUBSTANCE) (and (instance-of ?SUBSTANCE ToxicSubstance) (part-of ?SUBSTANCE ?ORGANISM)))) (subclass-of Food OrganicObject) (documentation Food "Any &%OrganicSubstance containing &%Nutrients, such as carbohydrates, proteins, and fats, that can be ingested by a living &%Organism and metabolized into energy and body tissue.") (=> (instance-of ?FOOD Food) (exists (?NUTRIENT) (and (instance-of ?NUTRIENT Nutrient) (part-of ?NUTRIENT ?FOOD)))) (=> (instance-of ?FOOD Food) (exists (?ORGANISM) (and (instance-of ?ORGANISM Organism) (possible (exploits ?FOOD ?ORGANISM))))) (subclass-of AnatomicalStructure OrganicObject) (disjoint AnatomicalStructure Organism) (documentation AnatomicalStructure "A normal or pathological part of the anatomy or structural organization of an &%Organism.") (=> (instance-of ?ANAT AnatomicalStructure) (exists (?ORGANISM) (and (instance-of ?ORGANISM Organism) (part-of ?ANAT ?ORGANISM)))) (subclass-of BodyPart AnatomicalStructure) (documentation BodyPart "A collection of &%Cells and &%Tissues which are localized to a specific area and carry out one or more specialized functions of an &%Organism. The instances of this &%Class range from gross structures to small components of complex &%Organs.") (=> (instance-of ?PART BodyPart) (exists (?CELL) (and (instance-of ?CELL Cell) (part-of ?CELL ?PART)))) (subclass-of BodyJunction BodyPart) (documentation BodyJunction "The place where two &%AnatomicalStructures meet or connect.") (=> (instance-of ?JUNCT BodyJunction) (exists (?STRUCT) (and (instance-of ?STRUCT AnatomicalStructure) (component-of ?JUNCT ?STRUCT)))) (=> (instance-of ?JUNCT BodyJunction) (exists (?STRUCT1 ?STRUCT2) (and (connected ?JUNCT ?STRUCT1) (connected ?JUNCT ?STRUCT2) (instance-of ?STRUCT1 AnatomicalStructure) (instance-of ?STRUCT2 AnatomicalStructure) (not (equal ?STRUCT1 ?STRUCT2))))) (subclass-of Cell BodyPart) (documentation Cell "The fundamental structural and functional unit of living &%Organisms.") (=> (and (instance-of ?CELL Cell) (developmentalForm ?CELL ?FORM)) (instance-of ?FORM Cell)) (subclass-of CellWall BodyPart) (documentation CellWall "The permeable wall that encloses the &%Cells of most &%Organisms.") (=> (instance-of ?WALL CellWall) (exists (?CELL) (and (instance-of ?CELL Cell) (part-of ?WALL ?CELL)))) (subclass-of CellWall-Rigid CellWall) (documentation CellWall-Rigid "A type of &%CellWall found in &%Plants.") (subclass-of CellWall-NonRigid CellWall) (disjoint CellWall-NonRigid CellWall-Rigid) (documentation CellWall-NonRigid "A type of &%CellWall found in &%Animals.") (subclass-of Organ BodyPart) (documentation Organ "A somewhat independent &%BodyPart that performs a specialized function.") (=> (instance-of ?ORGAN Organ) (exists (?PURP) (hasPurpose ?ORGAN ?PURP))) (subclass-of SpinalColumn Organ) (documentation SpinalColumn "A flexible column made out of bones called vertebrae. The main function of the &%SpinalColumn is to protect the spinal cord.") (subclass-of Gland Organ) (documentation Gland "An &%Organ that removes &%Substances from the &%Blood, alters them in some way, and then releases them.") (subclass-of Tissue BodySubstance) (documentation Tissue "An 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).") (=> (instance-of ?STUFF Tissue) (exists (?PART) (and (instance-of ?PART Cell) (part-of ?PART ?STUFF)))) (=> (instance-of ?STUFF Tissue) (exists (?ORGANISM) (and (instance-of ?ORGANISM Organism) (part-of ?STUFF ?ORGANISM)))) (subclass-of EmbryonicStructure AnatomicalStructure) (documentation EmbryonicStructure "An &%AnatomicalStructure that exists only before the &%Organism is fully formed. In &%Mammals, for example, a structure that exists only prior to the birth of the organism. This structure may be normal or abnormal.") (=> (instance-of ?STRUCT EmbryonicStructure) (exists (?THING) (and (developmentalForm ?THING ?STRUCT) (or (instance-of ?THING Organism) (instance-of ?THING AnatomicalStructure))))) (subclass-of FullyFormedAnatomicalStructure AnatomicalStructure) (disjoint FullyFormedAnatomicalStructure EmbryonicStructure) (documentation FullyFormedAnatomicalStructure "An &%AnatomicalStructure in a fully formed &%Organism. In &%Mammals, for example, it would be a structure in the body after the birth of the &%Organism.") ;; The following formulas cover the hierarchy of &%Classes under ;; &%BiologicalProcess. (subclass-of BiologicalProcess NaturalProcess) (documentation BiologicalProcess "A &%NaturalProcess embodied in an &%OrganicObject.") (=> (instance-of ?PROC BiologicalProcess) (exists (?OBJ) (and (instance-of ?OBJ OrganicObject) (located-at ?PROC ?OBJ)))) (subclass-of PhysiologicProcess BiologicalProcess) (documentation PhysiologicProcess "A normal process of an &%Organism or part of an &%Organism.") (subclass-of OrganismProcess PhysiologicProcess) (documentation OrganismProcess "A physiologic function of the &%Organism as a whole, of multiple organ systems or of multiple &%Organs or &%Tissues.") (subclass-of Birth OrganismProcess) (documentation Birth "The &%Process of being born.") (=> (instance-of ?ORGANISM Organism) (exists (?BIRTH) (and (instance-of ?BIRTH Birth) (experiencer ?BIRTH ?ORGANISM)))) (subclass-of Death OrganismProcess) (documentation Death "The &%Process of dying.") (=> (instance-of ?ORGANISM Organism) (exists (?DEATH) (and (instance-of ?DEATH Death) (experiencer ?DEATH ?ORGANISM)))) (subclass-of Breathing OrganismProcess) (documentation Breathing "The &%Process of respiration, by which oxygen is made available to an &%Animal.") (subclass-of Growth OrganismProcess) (documentation Growth "The &%Process of biological development.") (subclass-of Replication OrganismProcess) (documentation Replication "The &%Process of biological reproduction. This can be either a sexual or an asexual process.") (subclass-of MentalProcess OrganismProcess) (documentation MentalProcess "An &%OrganismProcess involving the mind or cognitive processing.") (=> (instance-of ?PROCESS MentalProcess) (exists (?ANIMAL) (and (instance-of ?ANIMAL Animal) (experiencer ?PROCESS ?ANIMAL)))) (subclass-of OrganOrTissueProcess PhysiologicProcess) (disjoint OrganOrTissueProcess OrganismProcess) (documentation OrganOrTissueProcess "A &%PhysiologicProcess of a particular &%Organ or &%Tissue.") (=> (instance-of ?PROC ?OrganOrTissueProcess) (exists (?THING) (and (located-at ?PROC ?THING) (or (instance-of ?THING Organ) (instance-of ?THING Tissue))))) (subclass-of Photosynthesis OrganOrTissueProcess) (documentation Photosynthesis "Synthesis of carbohydrates from carbon dioxide, water, and light.") (=> (instance-of ?PROC Photosynthesis) (exists (?PLANT) (and (instance-of ?PLANT Plant) (patient ?PROC ?PLANT)))) (subclass-of PathologicProcess BiologicalProcess) (disjoint PathologicProcess PhysiologicProcess) (documentation PathologicProcess "A disordered process, activity, or state of the &%Organism as a whole, of a body system or systems, or of multiple &%Organs or &%Tissues. Included here are normal responses to a negative stimulus as well as patholologic conditions or states that are less specific than a disease. Pathologic functions frequently have systemic effects.") (subclass-of DiseaseOrSyndrome PathologicProcess) (documentation DiseaseOrSyndrome "A &%PathologicProcess which alters or interferes with a normal process, state or activity of an &%Organism. It is usually characterized by the abnormal functioning of one or more of the host's systems, parts, or &%Organs.") (subclass-of MentalOrBehavioralDysfunction DiseaseOrSyndrome) (documentation MentalOrBehavioralDysfunction "A clinically significant dysfunction whose major manifestation is behavioral or psychological. These dysfunctions may have identified or presumed biological etiologies or manifestations.") (=> (instance-of ?DISEASE MentalOrBehavioralDysfunction) (exists (?ANIMAL) (and (instance-of ?ANIMAL Animal) (patient ?DISEASE ?ANIMAL)))) (subclass-of Injuring PathologicProcess) (documentation Injuring "A traumatic wound or injury caused by an external agent or force. Since no injury is possible without some biologic function which affects the organism being injured, it is a subclass of &%BiologicalProcess.") (=> (instance-of ?INJ Injuring) (exists (?STRUCT) (and (instance-of ?STRUCT AnatomicalStructure) (patient ?INJ ?STRUCT)))) (=> (instance-of ?INJ Injuring) (exists (?OBJ) (and (instance-of ?OBJ Object) (causes ?OBJ ?INJ)))) (subclass-of Poisoning Injuring) (documentation Poisoning "A &%Poisoning is caused by an external substance. Since &%Poisoning is not possible without some biologic function which affects the &%Organism being injured, it is a subclass of &%BiologicalProcess.") (=> (instance-of ?POISON Poisoning) (exists (?THING) (and (patient ?POISON ?THING) (or (instance-of ?THING Organism) (instance-of ?THING AnatomicalStructure))))) (=> (instance-of ?POISON Poisoning) (exists (?SUBSTANCE) (and (causes ?SUBSTANCE ?POISON) (instance-of ?SUBSTANCE ToxicSubstance)))) ;; END FILE ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; SOCIAL HIERARCHY ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; This section contains definitions and axioms relating to social ;; groups and the relations between them. (subclass-of Group Collection) (subclass-of Group Agent) (documentation Group "A &%Collection of &%Animals or &%Persons, e.g. a flock of sheep, a herd of goats, or the local Boy Scout troop.") (=> (and (instance-of ?GROUP Group) (member ?MEMB ?GROUP)) (or (instance-of ?MEMB Animal) (instance-of ?MEMB Person))) (subclass-of GroupOfPeople Group) (documentation GroupOfPeople "A &%Group consisting exclusively of &%Persons.") (=> (and (instance-of ?GROUP GroupOfPeople) (member ?MEMB ?GROUP)) (instance-of ?MEMB Person)) (subclass-of AgeGroup GroupOfPeople) (documentation AgeGroup "A &%GroupOfPeople whose &%members all have the same &%age.") (=> (instance-of ?GROUP AgeGroup) (forall (?MEMB1 ?MEMB2 ?AGE1 ?AGE2) (=> (and (member ?MEMB1 ?GROUP) (member ?MEMB2 ?GROUP) (age ?MEMB1 ?AGE1) (age ?MEMB2 ?AGE2)) (equal ?AGE1 ?AGE2)))) (subclass-of FamilyGroup GroupOfPeople) (documentation FamilyGroup "A &%GroupOfPeople whose &%members bear &%familyRelations to one another.") (=> (instance-of ?GROUP FamilyGroup) (forall (?MEMB1 ?MEMB2) (=> (and (member ?MEMB1 ?GROUP) (member ?MEMB2 ?GROUP)) (familyRelation ?MEMB1 ?MEMB2)))) (instance-of familyRelation EquivalenceRelation) (nth-domain familyRelation 1 Organism) (nth-domain familyRelation 2 Organism) (documentation familyRelation "A very general &%Predicate for biological relationships. (&%familyRelation ?ORGANISM1 ?ORGANISM2) means that ?ORGANISM1 and ?ORGANISM2 are biologically derived from a common ancestor.") (=> (familyRelation ?ORGANISM1 ?ORGANISM2) (exists (?ORGANISM3) (and (familyRelation ?ORGANISM3 ?ORGANISM1) (familyRelation ?ORGANISM3 ?ORGANISM2)))) (subclass-of Organization GroupOfPeople) (documentation Organization "An &%Organization is a corporate or similar institution, distinguished from &%Persons and other &%Agents. The &%members of an &%Organization typically have a common purpose or function. The continued existence of an &%Organization is not dependent on any of its members, its location, or its particular facility. Note that parts of &%Organizations should not be included here, unless they are &%subOrganizations of an &%Organization.") (subclass-of Corporation Organization) (documentation Corporation "An &%Organization that provides products and/or services for a fee with the aim of making a profit.") (subclass-of Publisher Corporation) (documentation Publisher "A &%Publisher is a &%Corporation that publishes documents of some sort.") (subclass-of Government Organization) (documentation Government "The ruling body of a &%Nation or one of the &%subOrganizations of a &%Nation.") (subclass-of University Organization) (documentation University "A &%University is an institute of higher learning that offers a graduate research program. Of importance here is the fact that &%Universities sponsor the publication of dissertations. Any &%Organization that has been accredited to grant graduate degrees and is recognized as a publisher of dissertations can be called a &%University. Some places that call themselves colleges are, in fact, instances of this &%Class.") (subrelation-of subOrganizations subCollection) (nth-domain subOrganizations 1 Organization) (nth-domain subOrganizations 2 Organization) (documentation subOrganizations "(&%subOrganizations ?ORG1 ?ORG2) means that ?ORG1 is an &%Organization which is a proper part of the &%Organization ?ORG2.") (instance-of citizen-of AsymmetricRelation) (nth-domain citizen-of 1 Person) (nth-domain citizen-of 2 Nation) (documentation citizen-of "(&%citizen-of ?PERSON ?NATION) means that &%Person ?PERSON is a citizen of &%Nation ?NATION.") ;; END FILE ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; TEMPORAL DEFINITIONS/AXIOMS ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; The first part of this section contains definitions and axioms for ;; &%TimePoint, &%TimeInterval, and relations involving these temporal ;; notions. Most of these definitions and axioms were derived from James ;; Allen's work. This part of the section was extensively revised on ;; the basis of comments from Pat Hayes. The second part of this section ;; is an attempt to incorporate the Simple-Time ontology from the ;; Ontolingua server into the SUMO. ;; Necessary intermediate constants (subclass-of TimeMeasure-Duration TimeMeasure) (documentation TimeMeasure-Duration "Any measure of length of time, with or without respect to the universal timeline.") (subclass-of TimeMeasure-Position TimeMeasure) (partition TimeMeasure-Position TimeInterval TimePoint) (documentation TimeMeasure-Position "Any &%TimePoint or &%TimeInterval along the universal timeline from &%TimePoint-NegativeInfinity to &%TimePoint-PositiveInfinity.") (subclass-of TimeInterval TimeMeasure-Position) (subclass-of TimeInterval TimeMeasure-Duration) (documentation TimeInterval "An interval of time. Note that &%TimeInterval is a subclass of both &%TimeMeasure-Duration and &%TimeMeasure-Position - &%TimeIntervals have both an extent and a location on the universal timeline.") (subclass-of TimePoint TimeMeasure-Position) (disjoint TimePoint TimeMeasure-Duration) (documentation TimePoint "An extensionless point on the universal timeline. The &%TimePoints at which &%Processes occur can be known with various degrees of precision and approximation, but conceptually &%TimePoints are point-like and not interval-like. That is, it doesn't make sense to talk about what happens during a TimePoint, or how long the TimePoint lasts.") (=> (instance-of ?POINT TimePoint) (exists (?INTERVAL) (and (instance-of ?INTERVAL TimeInterval) (temporal-part-of ?POINT ?INTERVAL)))) (instance-of TimePoint-PositiveInfinity TimePoint) (documentation TimePoint-PositiveInfinity "The &%TimePoint that is after all other &%TimePoints.") (=> (and (instance-of ?POINT TimePoint) (not (equal ?POINT TimePoint-PositiveInfinity))) (before ?POINT TimePoint-PositiveInfinity)) (=> (and (instance-of ?POINT TimePoint) (not (equal ?POINT TimePoint-PositiveInfinity))) (exists (?OTHERPOINT) (between-temporal ?POINT ?OTHERPOINT TimePoint-PositiveInfinity))) (instance-of TimePoint-NegativeInfinity TimePoint) (documentation TimePoint-NegativeInfinity "The &%TimePoint that is before all other &%TimePoints.") (=> (and (instance-of ?POINT TimePoint) (not (equal ?POINT TimePoint-NegativeInfinity))) (before TimePoint-NegativeInfinity ?POINT)) (=> (and (instance-of ?POINT TimePoint) (not (equal ?POINT TimePoint-NegativeInfinity))) (exists (?OTHERPOINT) (between-temporal TimePoint-NegativeInfinity ?OTHERPOINT ?POINT))) (instance-of temporal-part-of AsymmetricRelation) (nth-domain temporal-part-of 1 TimePoint) (nth-domain temporal-part-of 2 TimeInterval) (documentation temporal-part-of "(&%temporal-part-of ?POINT ?INTERVAL) means that &%TimePoint ?POINT is part of &%TimeInterval ?INTERVAL.") (instance-of holdsDuring AsymmetricRelation) (nth-domain holdsDuring 1 TimeMeasure-Position) (nth-domain holdsDuring 2 KIF-Formula) (documentation holdsDuring "(&%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 &%temporal-part-of ?TIME.") (=> (and (holdsDuring ?TIME1 ?SITUATION) (instance-of ?TIME1 TimeInterval) (temporal-part-of ?TIME2 ?TIME1)) (holdsDuring ?TIME2 ?SITUATION)) ;; Definitions of basic temporal relations (instance-of BeginFn TemporalRelation) (instance-of BeginFn UnaryFunction) (nth-domain BeginFn 1 TimeInterval) (range BeginFn TimePoint) (documentation BeginFn "A &%UnaryFunction that maps a &%TimeInterval to the &%TimePoint at which the interval begins.") (=> (equal (BeginFn ?INTERVAL) ?POINT) (forall (?OTHERPOINT) (=> (and (temporal-part-of ?OTHERPOINT ?INTERVAL) (not (equal ?OTHERPOINT ?POINT))) (before ?POINT ?OTHERPOINT)))) (instance-of EndFn TemporalRelation) (instance-of EndFn UnaryFunction) (nth-domain EndFn 1 TimeInterval) (range EndFn TimePoint) (documentation EndFn "A &%UnaryFunction that maps a &%TimeInterval to the &%TimePoint at which the interval ends.") (=> (equal (EndFn ?INTERVAL) ?POINT) (forall (?OTHERPOINT) (=> (and (temporal-part-of ?OTHERPOINT ?INTERVAL) (not (equal ?OTHERPOINT ?POINT))) (before ?OTHERPOINT ?POINT)))) (instance-of starts TemporalRelation) (instance-of starts TransitiveRelation) (instance-of starts IrreflexiveRelation) (nth-domain starts 1 TimeInterval) (nth-domain starts 2 TimeInterval) (documentation starts "(&%starts ?INTERVAL1 ?INTERVAL2) means that ?INTERVAL1 and ?INTERVAL2 are both &%TimeIntervals that have the same initial &%TimePoint and that ?INTERVAL1 ends before ?INTERVAL2.") (<=> (starts ?INTERVAL1 ?INTERVAL2) (and (equal (BeginFn ?INTERVAL1) (BeginFn ?INTERVAL2)) (before (EndFn ?INTERVAL1) (EndFn ?INTERVAL2)))) (instance-of finishes TemporalRelation) (instance-of finishes TransitiveRelation) (instance-of finishes IrreflexiveRelation) (nth-domain finishes 1 TimeInterval) (nth-domain finishes 2 TimeInterval) (documentation finishes "(&%finishes ?INTERVAL1 ?INTERVAL2) means that ?INTERVAL1 and ?INTERVAL2 are both &%TimeIntervals that have the same ending &%TimePoint and that ?INTERVAL2 begins before ?INTERVAL1.") (<=> (finishes ?INTERVAL1 ?INTERVAL2) (and (before (BeginFn ?INTERVAL2) (BeginFn ?INTERVAL1)) (equal (EndFn ?INTERVAL2) (EndFn ?INTERVAL1)))) (instance-of before TemporalRelation) (instance-of before IrreflexiveRelation) (instance-of before TransitiveRelation) (subrelation-of before beforeEq) (nth-domain before 1 TimePoint) (nth-domain before 2 TimePoint) (documentation before "(&%before ?POINT1 ?POINT2) means that ?POINT1 precedes ?POINT2 on the universal timeline.") (instance-of beforeEq PartialOrderingRelation) (nth-domain beforeEq 1 TimePoint) (nth-domain beforeEq 2 TimePoint) (documentation beforeEq "(&%beforeEq ?POINT1 ?POINT2) means that ?POINT1 is identical with ?POINT2 or occurs before it on the universal timeline.") (=> (beforeEq ?POINT1 ?POINT2) (or (before ?POINT1 ?POINT2) (equal ?POINT1 ?POINT2))) (instance-of between-temporal TemporalRelation) (instance-of between-temporal TernaryRelation) (subrelation-of between-temporal betweenEq-temporal) (nth-domain between-temporal 1 TimePoint) (nth-domain between-temporal 2 TimePoint) (nth-domain between-temporal 3 TimePoint) (documentation between-temporal "(&%between-temporal ?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.") (<=> (between-temporal ?POINT1 ?POINT2 ?POINT3) (and (before ?POINT1 ?POINT2) (before ?POINT2 ?POINT3))) (instance-of betweenEq-temporal TemporalRelation) (instance-of betweenEq-temporal TernaryRelation) (nth-domain betweenEq-temporal 1 TimePoint) (nth-domain betweenEq-temporal 2 TimePoint) (nth-domain betweenEq-temporal 3 TimePoint) (documentation betweenEq-temporal "(&%betweenEq-temporal ?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.") (<=> (betweenEq-temporal ?POINT1 ?POINT2 ?POINT3) (and (beforeEq ?POINT1 ?POINT2) (beforeEq ?POINT2 ?POINT3))) (instance-of overlapsTemporally TemporalRelation) (instance-of overlapsTemporally PartialOrderingRelation) (nth-domain overlapsTemporally 1 TimeInterval) (nth-domain overlapsTemporally 2 TimeInterval) (documentation overlapsTemporally "(&%overlapsTemporally ?INTERVAL1 ?INTERVAL2) means that the two &%TimeIntervals ?INTERVAL1 and ?INTERVAL2 have a &%TimeInterval in common. Note that this is consistent with ?INTERVAL1 and ?INTERVAL2 being the same &%TimeInterval.") (<=> (overlapsTemporally ??INTERVAL1 ?INTERVAL2) (or (equal ?INTERVAL1 ?INTERVAL2) (during ?INTERVAL1 ?INTERVAL2) (starts ?INTERVAL1 ?INTERVAL2) (finishes ?INTERVAL1 ?INTERVAL2))) (instance-of during TemporalRelation) (instance-of during TransitiveRelation) (instance-of during IrreflexiveRelation) (subrelation-of during overlapsTemporally) (nth-domain during 1 TimeInterval) (nth-domain during 2 TimeInterval) (documentation during "(&%during ?INTERVAL1 ?INTERVAL2) means that ?INTERVAL1 starts after and ends before ?INTERVAL2.") (=> (during ?INTERVAL1 ?INTERVAL2) (and (before (EndFn ?INTERVAL1) (EndFn ?INTERVAL2)) (before (BeginFn ?INTERVAL2) (BeginFn ?INTERVAL1)))) (instance-of meetsTemporally TemporalRelation) (instance-of meetsTemporally AsymmetricRelation) (nth-domain meetsTemporally 1 TimeInterval) (nth-domain meetsTemporally 2 TimeInterval) (documentation meetsTemporally "(&%meetsTemporally ?INTERVAL1 ?INTERVAL2) means that the terminal point of the &%TimeInterval ?INTERVAL1 is the initial point of the &%TimeInterval ?INTERVAL2.") (<=> (meetsTemporally ?INTERVAL1 ?INTERVAL2) (equal (EndFn ?INTERVAL1) (BeginFn ?INTERVAL2))) (=> (and (equal (BeginFn ?INTERVAL1) (BeginFn ?INTERVAL2)) (equal (EndFn ?INTERVAL1) (EndFn ?INTERVAL2))) (equal ?INTERVAL1 ?INTERVAL2)) (instance-of earlier TemporalRelation) (instance-of earlier TransitiveRelation) (instance-of earlier IrreflexiveRelation) (nth-domain earlier 1 TimeInterval) (nth-domain earlier 2 TimeInterval) (documentation earlier "(earlier INTERVAL1 INTERVAL2) means that INTERVAL1 ends before INTERVAL2 begins.") (=> (earlier ?INTERVAL1 ?INTERVAL2) (before (EndFn ?INTERVAL1) (BeginFn ?INTERVAL2))) (instance-of co-occur TemporalRelation) (instance-of co-occur EquivalenceRelation) (nth-domain co-occur 1 Physical) (nth-domain co-occur 2 Physical) (documentation co-occur "(&%co-occur ?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.") (<=> (co-occur ?PHYS1 ?PHYS2) (equal (WhenFn ?PHYS1) (WhenFn ?PHYS2))) ;; The following functions generate &%TimeIntervals which are relevant ;; with respect to instances of &%Physical. (instance-of WhenFn TemporalRelation) (instance-of WhenFn UnaryFunction) (nth-domain WhenFn 1 Physical) (range WhenFn TimeInterval) (documentation WhenFn "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), ?THING does not &%exist-at ?TIME.") (before (BeginFn (WhenFn ?THING)) (EndFn (WhenFn ?THING))) (instance-of PastFn TemporalRelation) (instance-of PastFn UnaryFunction) (nth-domain PastFn 1 TimeMeasure-Position) (range PastFn TimeInterval) (documentation PastFn "A &%UnaryFunction that maps a &%TimeMeasure-Position to the &%TimeInterval that meets it and that begins at &%TimePoint-NegativeInfinity.") (meetsTemporally (PastFn (WhenFn ?THING)) (WhenFn ?THING)) (equal (BeginFn (PastFn ?TIME)) TimePoint-NegativeInfinity) (instance-of ImmediatePastFn TemporalRelation) (instance-of ImmediatePastFn UnaryFunction) (nth-domain ImmediatePastFn 1 TimeMeasure-Position) (range ImmediatePastFn TimeInterval) (documentation ImmediatePastFn "A &%UnaryFunction that maps a &%TimeMeasure-Position to a short, indeterminate &%TimeInterval that immediately precedes the &%TimeMeasure-Position.") (finishes (ImmediatePastFn (WhenFn ?THING)) (PastFn (WhenFn ?THING))) (instance-of FutureFn TemporalRelation) (instance-of FutureFn UnaryFunction) (nth-domain FutureFn 1 TimeMeasure-Position) (range FutureFn TimeInterval) (documentation FutureFn "A &%UnaryFunction that maps a &%TimeMeasure-Position to the &%TimeInterval which it meets and which ends at &%TimePoint-NegativeInfinity.") (meetsTemporally (WhenFn ?THING) (FutureFn (WhenFn ?THING))) (equal (EndFn (FutureFn ?TIME)) TimePoint-PositiveInfinity) (instance-of ImmediateFutureFn TemporalRelation) (instance-of ImmediateFutureFn UnaryFunction) (nth-domain ImmediateFutureFn 1 TimeMeasure-Position) (range ImmediateFutureFn TimeInterval) (documentation ImmediatePastFn "A &%UnaryFunction that maps a &%TimeMeasure-Position to a short, indeterminate &%TimeInterval that immediately precedes the &%TimeMeasure-Position.") (starts (ImmediateFutureFn (WhenFn ?THING)) (FutureFn (WhenFn ?THING))) ;; The following definitions and axioms (down to the next section break) ;; cover the content in the Simple-Time ontology on the Ontolingua server. (instance-of time TemporalRelation) (instance-of time AsymmetricRelation) (nth-domain time 1 Physical) (nth-domain time 2 TimeMeasure-Position) (documentation time "A very general &%TemporalRelation that specifies, at any level of resolution, the &%TimeMeasure-Position at which a particular &%Object or &%Process exists or occurs.") (=> (and (time ?PHYS ?TIME1) (time ?PHYS ?TIME2)) (or (overlapsTemporally ?TIME1 ?TIME2) (temporal-part-of ?TIME1 ?TIME2) (temporal-part-of ?TIME2 ?TIME1))) (instance-of date AsymmetricRelation) (nth-domain date 1 Physical) (nth-domain date 2 Day) (subrelation-of date time) (singleValued date 2) (documentation date "A &%BinaryRelation that specifies a &%TimeMeasure-Position in absolute calendar time, at the resolution of one day, for a particular &%Object or &%Process.") (instance-of birthTime AsymmetricRelation) (nth-domain birthTime 1 Organism) (nth-domain birthTime 2 TimeMeasure-Position) (subrelation-of birthTime time) (documentation birthTime "A &%BinaryRelation that specifies, at any level of resolution, the &%TimeMeasure-Position at which a particular &%Organism was born.") (=> (birthTime ?ORGANISM ?TIME) (holdsDuring (ImmediateFutureFn ?TIME) (attribute-of ?ORGANISM Living))) (=> (birthTime ?ORGANISM ?TIME) (holdsDuring ?TIME (exists (?BIRTH) (and (instance-of ?BIRTH Birth) (experiencer ?BIRTH ?ORGANISM))))) (instance-of deathTime AsymmetricRelation) (nth-domain deathTime 1 Organism) (nth-domain deathTime 2 TimeMeasure-Position) (subrelation-of deathTime time) (documentation deathTime "A &%BinaryRelation that specifies, at any level of resolution, the &%TimeMeasure-Position at which a particular &%Organism died.") (=> (deathTime ?ORGANISM ?TIME) (holdsDuring (FutureFn ?TIME) (attribute-of ?ORGANISM Dead))) (=> (deathTime ?ORGANISM ?TIME) (holdsDuring ?TIME (exists (?DEATH) (and (instance-of ?DEATH Death) (experiencer ?DEATH ?ORGANISM))))) (=> (and (birthTime ?ORGANISM ?TIME1) (deathTime ?ORGANISM ?TIME2) (instance-of ?TIME1 TimePoint) (instance-of ?TIME2 TimePoint)) (exists (?INTERVAL) (and (equal (BeginFn ?INTERVAL) ?TIME1) (equal (EndFn ?INTERVAL) ?TIME2) (holdsDuring ?INTERVAL (attribute-of ?ORGANISM Living))))) (=> (and (birthTime ?ORGANISM ?TIME1) (deathTime ?ORGANISM ?TIME2) (instance-of ?TIME1 TimeInterval) (instance-of ?TIME2 TimeInterval)) (exists (?INTERVAL) (and (starts ?TIME1 ?INTERVAL) (finishes ?TIME2 ?INTERVAL) (holdsDuring ?INTERVAL (attribute-of ?ORGANISM Living))))) (instance-of YearFn TemporalRelation) (instance-of YearFn UnaryFunction) (nth-domain YearFn 1 Integer) (range YearFn Year) (documentation YearFn "A &%UnaryFunction that maps a number to the corresponding calendar &%Year. For example, (&%YearFn 1912) denotes the &%Year 1912.") (instance-of MonthFn TemporalRelation) (instance-of MonthFn BinaryFunction) (nth-domain MonthFn 1 PositiveInteger) (nth-domain MonthFn 2 Year) (range MonthFn Month) (documentation MonthFn "A &%BinaryFunction that maps a number and a &%Year to the corresponding &%Month of the &%Year. For example (&%MonthFn 8 (&%YearFn 1912)) denotes the eighth &%Month, i.e. August, of the &%Year 1912.") (=> (instance-of (MonthFn ?NUMBER ?YEAR) Month) (lessThanOrEqualTo ?NUMBER 12)) (instance-of DayFn TemporalRelation) (instance-of DayFn BinaryFunction) (nth-domain DayFn 1 PositiveInteger) (nth-domain DayFn 2 Month) (range DayFn Day) (documentation DayFn "A &%BinaryFunction that maps a number and a &%Month to the corresponding &%Day of the &%Month. For example, (&%DayFn 18 (&%MonthFn 8 (YearFn 1912))) denotes the 18th day of August 1912.") (=> (instance-of (DayFn ?NUMBER ?MONTH) Day) (lessThanOrEqualTo ?NUMBER 31)) (instance-of HourFn TemporalRelation) (instance-of HourFn BinaryFunction) (nth-domain HourFn 1 PositiveRealNumber) (nth-domain HourFn 2 Day) (range HourFn Hour) (documentation HourFn "A &%BinaryFunction that maps a number and a &%Day to the corresponding &%Hour of the &%Day. For example, (&%HourFn 14 (&%DayFn 18 (&%MonthFn 8 (YearFn 1912)))) denotes the 14th hour, i.e. 2 PM, on the 18th day of August 1912.") (=> (instance-of (HourFn ?NUMBER ?DAY) Hour) (lessThan ?NUMBER 24)) (instance-of MinuteFn TemporalRelation) (instance-of MinuteFn BinaryFunction) (nth-domain MinuteFn 1 PositiveRealNumber) (nth-domain MinuteFn 2 Hour) (range MinuteFn Minute) (documentation MinuteFn "A &%BinaryFunction that maps a number and an &%Hour to the corresponding &%Minute of the &%Hour. For example, (&%MinuteFn 15 (&%HourFn 14 (&%DayFn 18 (&%MonthFn 8 (YearFn 1912))))) denotes 15 minutes after 2 PM on the 18th day of August 1912.") (=> (instance-of (MinuteFn ?NUMBER ?HOUR) Minute) (lessThan ?NUMBER 60)) (instance-of SecondFn TemporalRelation) (instance-of SecondFn BinaryFunction) (nth-domain SecondFn 1 PositiveRealNumber) (nth-domain SecondFn 2 Minute) (range SecondFn Second) (documentation SecondFn "A &%BinaryFunction that maps a number and a &%Minute to the corresponding &%Second of the &%Minute. For 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.") (=> (instance-of (SecondFn ?NUMBER ?MINUTE) Second) (lessThan ?NUMBER 60)) (subclass-of Year TimeInterval) (relatedInternalConcept Year Year-Duration) (relatedInternalConcept Year YearFn) (documentation Year "The &%Class of all calendar &%Years.") (subclass-of Month TimeInterval) (relatedInternalConcept Month Month-Duration) (relatedInternalConcept Month MonthFn) (documentation Month "The &%Class of all calendar &%Months.") (subclass-of Day TimeInterval) (relatedInternalConcept Day Day-Duration) (relatedInternalConcept Day DayFn) (documentation Day "The &%Class of all calendar &%Days.") (subclass-of Hour TimeInterval) (relatedInternalConcept Hour Hour-Duration) (relatedInternalConcept Hour HourFn) (documentation Hour "The &%Class of all clock &%Hours.") (subclass-of Minute TimeInterval) (relatedInternalConcept Minute Minute-Duration) (relatedInternalConcept Minute MinuteFn) (documentation Minute "The &%Class of all clock &%Minutes.") (subclass-of Second TimeInterval) (relatedInternalConcept Second Second-Duration) (relatedInternalConcept Second SecondFn) (documentation Second "The &%Class of all clock &%Seconds.") ;; END FILE ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; MEREOTOPOLOGICAL DEFINITIONS/AXIOMS ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Most of this content is taken from Barry Smith's and Nicola Guarino's ;; papers on the subject. (instance-of connected SpatialRelation) (instance-of connected ReflexiveRelation) (instance-of connected SymmetricRelation) (nth-domain connected 1 Object) (nth-domain connected 2 Object) (documentation connected "(connected ?OBJ1 ?OBJ2) means that ?OBJ1 &%meetsSpatially ?OBJ2 or that ?OBJ1 &%overlapsSpatially ?OBJ2.") (=> (connected ?OBJ1 ?OBJ2) (or (meetsSpatially ?OBJ1 ?OBJ2) (overlapsSpatially ?OBJ1 ?OBJ2))) (subrelation-of meetsSpatially connected) (documentation meetsSpatially "(&%meetsSpatially ?OBJ1 ?OBJ2) means that ?OBJ1 and ?OBJ2 are &%connected but that neither ?OBJ1 nor ?OBJ2 &%overlapsSpatially the other.") (=> (meetsSpatially ?X ?Y) (not (overlapsSpatially ?X ?Y))) (subrelation-of overlapsSpatially connected) (documentation overlapsSpatially "(&%overlapsSpatially ?OBJ1 ?OBJ2) means that the &%Objects ?OBJ1 and ?OBJ2 have some parts in common. This is a reflexive and symmetric (but not transitive) relation.") (<=> (overlapsSpatially ?OBJ1 ?OBJ2) (exists (?OBJ3) (and (part-of ?OBJ3 ?OBJ1) (part-of ?OBJ3 ?OBJ2)))) (=> (forall (?OBJ3) (=> (part-of ?OBJ3 ?OBJ1) (overlapsSpatially ?OBJ3 ?OBJ2))) (part-of ?OBJ1 ?OBJ2)) (subrelation-of overlapsPartially overlapsSpatially) (documentation overlapsPartially "(&%overlapsPartially ?OBJ1 ?OBJ2) means that ?OBJ1 and ?OBJ2 have part(s) in common, but neither ?OBJ1 nor ?OBJ2 is a &%part-of the other.") (=> (overlapsPartially ?OBJ1 ?OBJ2) (and (not (part-of ?OBJ1 ?OBJ2)) (not (part-of ?OBJ2 ?OBJ1)))) (subrelation-of superficial-part-of part-of) (documentation superficial-part-of "(&%superficial-part-of ?OBJ1 ?OBJ2) means that ?OBJ1 is a part of ?OBJ2 that has no interior parts of its own (or, intuitively, that only overlaps those parts of ?OBJ2 that are externally connected with the geometric complement of ?OBJ2). This too is a transitive relation closed under &%MereologicalSumFn and &%MereologicalProductFn.") (=> (superficial-part-of ?OBJ1 ?OBJ2) (not (exists (?OBJ3) (interior-part-of ?OBJ3 ?OBJ1)))) (subrelation-of surface-of superficial-part-of) (documentation surface-of "(&%surface-of ?OBJ1 ?OBJ2) means that ?OBJ1 is a maximally connected &%superficial-part-of ?OBJ2.") (=> (surface-of ?OBJ1 ?OBJ2) (and (instance-of ?OBJ1 SelfConnectedObject) (forall (?OBJ3) (=> (superficial-part-of ?OBJ3 ?OBJ2) (part-of ?OBJ3 ?OBJ1))))) (subrelation-of interior-part-of part-of) (documentation interior-part-of "(&%interior-part-of ?OBJ1 ?OBJ2) means that ?OBJ1 is part-of ?OBJ2 and there is no overlap between ?OBJ1 and any &%superficial-part-of ?OBJ2.") (=> (interior-part-of ?OBJ1 ?OBJ2) (forall (?PART) (=> (superficial-part-of ?PART ?OBJ2) (not (overlapsSpatially ?OBJ1 ?PART))))) (instance-of MereologicalSumFn SpatialRelation) (instance-of MereologicalSumFn BinaryFunction) (nth-domain MereologicalSumFn 1 Object) (nth-domain MereologicalSumFn 2 Object) (range MereologicalSumFn Object) (relatedInternalConcept MereologicalSumFn MereologicalProductFn) (relatedInternalConcept MereologicalSumFn MereologicalDifferenceFn) (documentation MereologicalSumFn "(&%MereologicalSumFn ?OBJ1 ?OBJ2) denotes the &%Object consisting of the parts which belong to either ?OBJ1 or ?OBJ2.") (=> (equal ?OBJ3 (MereologicalSumFn ?OBJ1 ?OBJ2)) (forall (?PART) (<=> (part-of ?PART ?OBJ3) (or (part-of ?PART ?OBJ1) (part-of ?PART ?OBJ2))))) (instance-of MereologicalProductFn SpatialRelation) (instance-of MereologicalProductFn BinaryFunction) (nth-domain MereologicalProductFn 1 Object) (nth-domain MereologicalProductFn 2 Object) (range MereologicalProductFn Object) (relatedInternalConcept MereologicalProductFn MereologicalDifferenceFn) (documentation MereologicalProductFn "(&%MereologicalProductFn ?OBJ1 ?OBJ2) denotes the &%Object consisting of the parts which belong to both ?OBJ1 and ?OBJ2.") (=> (equal ?OBJ3 (MereologicalProductFn ?OBJ1 ?OBJ2)) (forall (?PART) (<=> (part-of ?PART ?OBJ3) (and (part-of ?PART ?OBJ1) (part-of ?PART ?OBJ2))))) (instance-of MereologicalDifferenceFn SpatialRelation) (instance-of MereologicalDifferenceFn BinaryFunction) (nth-domain MereologicalDifferenceFn 1 Object) (nth-domain MereologicalDifferenceFn 2 Object) (range MereologicalDifferenceFn Object) (documentation MereologicalDifferenceFn "(&%MereologicalDifferenceFn ?OBJ1 ?OBJ2) denotes the &%Object consisting of the parts which belong to ?OBJ1 and not to ?OBJ2.") (=> (equal ?OBJ3 (MereologicalDifferenceFn ?OBJ1 ?OBJ2)) (forall (?PART) (<=> (part-of ?PART ?OBJ3) (and (part-of ?PART ?OBJ1) (not (part-of ?PART ?OBJ2)))))) (subclass-of SelfConnectedObject Object) (documentation SelfConnectedObject "A &%SelfConnectedObject is any &%Object that does not consist of two or more disconnected parts.") (<=> (instance-of ?OBJ SelfConnectedObject) (forall (?PART1 ?PART2) (=> (equal ?OBJ (MereologicalSumFn ?PART1 ?PART2)) (connected ?PART1 ?PART2)))) ;; What follows is an alignment of Casati and Varzi's formal theory of ;; holes with the SUMO. (instance-of hole-in SpatialRelation) (instance-of hole-in AsymmetricRelation) (nth-domain hole-in 1 Hole) (nth-domain hole-in 2 Object) (documentation hole-in "(&%hole-in ?HOLE ?OBJ) means that ?HOLE is a &%Hole in ?OBJ. A &%Hole is an fillable body located at the &%surface-of an &%Object.") (subclass-of Hole Region) (relatedInternalConcept Hole hole-in) (documentation Hole "A hole is an immaterial body located at the surface of an &%Object. Since every &%Hole is ontologically dependent on its host (i.e., the object in which it is a hole), being a &%Hole is defined as being a &%hole-in something. Note that two &%Holes may occupy the same region, or part of the same region, without sharing any parts.") (<=> (instance-of ?HOLE Hole) (exists (?OBJ) (hole-in ?HOLE ?OBJ))) (=> (hole-in ?HOLE ?OBJ) (not (instance-of ?OBJ Hole))) (=> (hole-in ?HOLE ?OBJ) (not (overlapsSpatially ?HOLE ?OBJ))) ;; Any two hosts of a hole have a common proper part that entirely hosts ;; the hole. (=> (and (hole-in ?HOLE ?OBJ1) (hole-in ?HOLE ?OBJ2)) (exists (?OBJ3) (and (proper-part-of ?OBJ3 (MereologicalProductFn ?OBJ1 ?OBJ2)) (hole-in ?HOLE ?OBJ3)))) ;; A common host of two holes hosts all parts of the sum of those holes. (=> (and (hole-in ?HOLE1 ?OBJ) (hole-in ?HOLE2 ?OBJ)) (forall (?HOLE3) (=> (part-of ?HOLE3 (MereologicalSumFn ?HOLE1 ?HOLE2)) (hole-in ?HOLE3 ?OBJ)))) ;; Any object that includes the host of a hole is a host of that hole, ;; unless its parts also include parts of that very hole. (=> (and (hole-in ?HOLE ?OBJ1) (part-of ?OBJ1 ?OBJ2)) (or (overlapsSpatially ?HOLE ?OBJ2) (hole-in ?HOLE ?OBJ2))) ;; Overlapping holes have overlapping hosts. (=> (and (hole-in ?HOLE1 ?OBJ1) (hole-in ?HOLE2 ?OBJ2) (overlapsSpatially ?HOLE1 ?HOLE2)) (overlapsSpatially ?OBJ1 ?OBJ2)) ;; No hole is atomic (=> (instance-of ?HOLE1 Hole) (exists (?HOLE2) (proper-part-of ?HOLE2 ?HOLE1))) ;; Topological Definitions ;; Definition of 'PrincipalHostFn' (instance-of PrincipalHostFn SpatialRelation) (instance-of PrincipalHostFn UnaryFunction) (nth-domain PrincipalHostFn 1 Hole) (range PrincipalHostFn Object) (documentation PrincipalHostFn "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 ?x is a hole).") (=> (equal ?OBJ1 (PrincipalHostFn ?HOLE)) (forall (?OBJ2) (<=> (overlapsSpatially ?OBJ2 ?OBJ1) (exists (?OBJ3) (and (hole-in ?HOLE ?OBJ3) (instance-of ?OBJ3 SelfConnectedObject) (overlapsSpatially ?OBJ2 ?OBJ3)))))) ;; Holes are self-connected; i.e., there are no scattered holes. (=> (instance-of ?HOLE Hole) (instance-of ?HOLE SelfConnectedObject)) ;; Holes are connected with their hosts. (=> (hole-in ?HOLE ?OBJ) (connected ?HOLE ?OBJ)) ;; Every hole has some self-connected host. (=> (instance-of ?HOLE Hole) (exists (?OBJ) (and (hole-in ?HOLE ?OBJ) (instance-of ?OBJ SelfConnectedObject)))) ;; No hole can have a proper part that is externally connected ;; with exactly the same things as the hole itself. (=> (and (instance-of ?HOLE1 Hole) (proper-part-of ?HOLE2 ?HOLE1)) (exists (?OBJ) (and (meetsSpatially ?HOLE1 ?OBJ) (not (meetsSpatially ?HOLE2 ?OBJ))))) (instance-of filled-by SpatialRelation) (instance-of filled-by AsymmetricRelation) (nth-domain filled-by 1 Hole) (nth-domain filled-by 2 Object) (relatedInternalConcept filled-by Fillable) (documentation filled-by "Holes can be filled. (&%filled-by ?HOLE ?OBJ) means that the &%Object ?OBJ fills the &%Hole ?HOLE. Note that 'filled' here means perfectly filled.") (instance-of Fillable ShapeProperty) (documentation Fillable "Something is &%Fillable if it can be filled by something else. Note that 'filled' here means perfectly filled.") (=> (attribute-of ?HOLE Fillable) (possible (exists (?OBJ) (filled-by ?HOLE ?OBJ)))) ;; Something is fillable just in case it is part of a hole; i.e., ;; fillability is an exclusive property of holes and their parts. (<=> (attribute-of ?HOLE1 Fillable) (exists (?HOLE2) (and (instance-of ?HOLE2 Hole) (part-of ?HOLE1 ?HOLE2)))) (subrelation-of completely-filled-by filled-by) (documentation completely-filled-by "(&%completely-filled-by ?HOLE ?OBJ) means that the &%Hole ?HOLE is &%filled-by some &%part-of the &%Object ?OBJ. Note that if (&%completely-filled-by ?HOLE ?OBJ1) and (&%part-of ?OBJ1 ?OBJ2), then (&%completely-filled-by ?HOLE ?OBJ2).") (=> (completely-filled-by ?HOLE ?OBJ1) (exists (?OBJ2) (and (part-of ?OBJ2 ?OBJ1) (filled-by ?HOLE ?OBJ2)))) (instance-of partially-filled-by SpatialRelation) (instance-of partially-filled-by AsymmetricRelation) (nth-domain partially-filled-by 1 Hole) (nth-domain partially-filled-by 2 Object) (documentation partially-filled-by "(&%partially-filled-by ?HOLE ?OBJ) means that there is some part of ?HOLE that is &%completely-filled-by ?OBJ. Note that if (&%partially-filled-by ?HOLE ?OBJ1) and (&%part-of ?OBJ1 ?OBJ2), then (&%partially-filled-by ?HOLE ?OBJ2). Note too that a partial filler need not be wholly inside a hole (it may stick out), which means that every complete filler also qualifies as (is a limit case of) a partial one.") (=> (partially-filled-by ?HOLE1 ?OBJ) (exists (?HOLE2) (and (part-of ?HOLE2 ?HOLE1) (completely-filled-by ?HOLE2 ?OBJ)))) (instance-of properly-filled-by SpatialRelation) (instance-of properly-filled-by AsymmetricRelation) (nth-domain properly-filled-by 1 Hole) (nth-domain properly-filled-by 2 Object) (documentation properly-filled-by "(&%properly-filled-by ?HOLE ?OBJ) means that ?HOLE is properly (though perhaps incompletely) filled by ?OBJ, i.e. some part of ?HOLE is perfectly filled by ?OBJ. Note that &%properly-filled-by is the dual of &%completely-filled-by, and is so related to &%partially-filled-by that ?HOLE is &%properly-filled-by ?OBJ just in case ?HOLE is &%partially-filled-by every part of ?OBJ. (Thus, every perfect filler is both complete and proper in this sense).") (=> (properly-filled-by ?HOLE1 ?OBJ) (exists (?HOLE2) (and (part-of ?HOLE2 ?HOLE1) (filled-by ?HOLE2 ?OBJ)))) ;; Perfect fillers and fillable entities have no parts in common (rather, ;; they may occupy the same spatial region). (=> (and (filled-by ?HOLE ?OBJ1) (attribute-of ?OBJ2 Fillable)) (not (overlapsSpatially ?OBJ1 ?OBJ2))) ;; A complete filler of (a part of) a hole is connected with everything ;; with which (that part of) the hole itself is connected. (=> (completely-filled-by ?HOLE ?OBJ1) (forall (?OBJ2) (=> (connected ?OBJ2 ?HOLE) (connected ?OBJ2 ?OBJ1)))) ;; Every hole is connected with everything with which a proper filler ;; of the hole is connected. (=> (and (properly-filled-by ?HOLE ?OBJ1) (connected ?OBJ2 ?OBJ1)) (connected ?HOLE ?OBJ2)) ;; A perfect filler of (a part of) a hole completely fills every proper ;; part of (that part of) that hole. (=> (and (filled-by ?HOLE1 ?OBJ) (proper-part-of ?HOLE2 ?HOLE1)) (completely-filled-by ?HOLE1 ?OBJ)) ;; Every proper part of a perfect filler of (a part of) a hole properly ;; fills (that part of) that hole. (=> (and (filled-by ?HOLE ?OBJ1) (proper-part-of ?OBJ2 ?OBJ1)) (properly-filled-by ?HOLE ?OBJ2)) (instance-of SkinFn SpatialRelation) (instance-of SkinFn UnaryFunction) (nth-domain SkinFn 1 Hole) (range SkinFn Object) (documentation SkinFn "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 &%superficial-part-of) of the &%Hole's principal host (see &%PrincipalHostFn) with which the &%Hole is externally connected.") (=> (equal ?OBJ1 (SkinFn ?HOLE)) (forall (?OBJ2) (<=> (overlapsSpatially ?OBJ2 ?OBJ1) (exists (?OBJ3) (and (superficial-part-of ?OBJ3 (PrincipalHostFn ?HOLE)) (meetsSpatially ?HOLE ?OBJ3) (overlapsSpatially ?OBJ2 ?OBJ3)))))) ;; END FILE ;; BEGIN FILE ;;;;;;;;;;;;;;;;;;;;; ;; POSITIONS ;; ;;;;;;;;;;;;;;;;;;;;; ;; This section aligns the content in the Positions ontology of ;; ITBM-CNR. This content is, for the most part, a set of instances ;; of &%SpatialRelation. (instance-of position SpatialRelation) (instance-of position BinaryRelation) (nth-domain position 1 Object) (nth-domain position 2 Object) (documentation position "(position ?OBJ1 ?OBJ2) means that ?OBJ1 is positioned with respect to ?OBJ2 in some way. This is a very general predicate whose main function is to serve as an umbrella for specific &%Predicates.") (subrelation-of above position) (instance-of above AsymmetricRelation) (inverse above below) (documentation above "This is a cognitive primitive, derived from the up/down schema and not involving contact. (&%above ?OBJ1 ?OBJ2) means that ?OBJ1 is above ?OBJ2.") (=> (above ?OBJ1 ?OBJ2) (not (connected ?OBJ1 ?OBJ2))) (subrelation-of adjacent position) (instance-of adjacent EquivalenceRelation) (documentation adjacent "(&%adjacent ?OBJ1 ?OBJ2) means that ?OBJ1 is close to, near or abutting ?OBJ2 with no other structure of the same kind intervening. This &%Predicate covers the following relations: adjoins, abuts, is contiguous to, is juxtaposed, and is close to.") (=> (adjacent ?OBJ1 ?OBJ2) (or (near ?OBJ1 ?OBJ2) (connected ?OBJ1 ?OBJ2))) (subrelation-of along position) (instance-of along EquivalenceRelation) (relatedInternalConcept along traverses) (documentation along "(along ?OBJ1 ?OBJ2) means that the &%Object ?OBJ1 shares the area of ?OBJ2 at least as far the extension of one dimension is concerned.") (subrelation-of behind position) (instance-of behind AsymmetricRelation) (documentation behind "This is a cognitive primitive, derived from the front/back schema. (&%behind ?OBJ1 ?OBJ2) means that ?OBJ1 is behind ?OBJ2.") (subrelation-of below position) (instance-of below AsymmetricRelation) (documentation below "This is a cognitive primitive, derived from the up/down schema and not involving contact. (&%below ?OBJ1 ?OBJ2) means that ?OBJ1 is below ?OBJ2.") (=> (below ?OBJ1 ?OBJ2) (not (connected ?OBJ1 ?OBJ2))) (instance-of between SpatialRelation) (instance-of between TernaryRelation) (nth-domain between 1 Object) (nth-domain between 2 Object) (nth-domain between 3 Object) (documentation between "(between ?OBJ1 ?OBJ2 ?OBJ3) means that ?OBJ2 is spatially located between ?OBJ1 and ?OBJ3.") (=> (between ?OBJ1 ?OBJ2 ?OBJ3) (and (left-of ?OBJ2 ?OBJ1) (left-of ?OBJ1 ?OBJ3))) (subrelation-of contains position) (subrelation-of contains connected) (instance-of contains AsymmetricRelation) (documentation contains "Limits, bounds, confines, encloses or circumscribes - the surrounding relation for &%Objects. (&%contains ?OBJ1 ?OBJ2) means that the interior of ?OBJ1 wholly surrounds ?OBJ2.") (=> (contains ?OBJ1 ?OBJ2) (forall (?PART2) (=> (part-of ?PART2 ?OBJ2) (exists (?PART1) (and (interior-part-of ?PART1 ?OBJ1) (exactly-located-at ?PART2 ?PART1)))))) (subrelation-of crosses-over traverses) (instance-of crosses-over AsymmetricRelation) (documentation crosses-over "(crosses-over ?OBJ1 ?OBJ2) means that &%Object ?OBJ1 &%traverses Object ?OBJ2, without being &%connected to it.") (=> (crosses-over ?OBJ1 ?OBJ2) (not (connected ?OBJ1 ?OBJ2))) (subrelation-of crosses-through traverses) (subrelation-of crosses-through connected) (instance-of crosses-through AsymmetricRelation) (documentation crosses-through "(crosses-through ?OBJ1 ?OBJ2) means that ?OBJ1 is &%connected to ?OBJ2 along at least one whole dimension (length, width or depth).") (subrelation-of in-front-of position) (instance-of in-front-of AsymmetricRelation) (inverse in-front-of behind) (documentation in-front-of "This is a cognitive primitive, derived from the front/back schema. (&%in-front-of ?OBJ1 ?OBJ2) means that ?OBJ1 is &%in-front-of ?OBJ2.") (subrelation-of left-of position) (instance-of left-of AsymmetricRelation) (documentation left-of "This is a cognitive primitive, derived from the left/right schema. (&%left-of ?OBJ1 ?OBJ2) means that ?OBJ1 is to the &%left-of ?OBJ2.") (subrelation-of near position) (instance-of near EquivalenceRelation) (documentation near "The relation of common sense adjacency without contact. (&%near ?OBJ1 ?OBJ2) means that ?OBJ1 is &%near ?OBJ2.") (subrelation-of on position) (subrelation-of on connected) (instance-of on AsymmetricRelation) (documentation on "This is a cognitive primitive, derived from the up/down schema and involving contact. (&%on ?OBJ1 ?OBJ2) means that ?OBJ1 is on top of ?OBJ2.") (subrelation-of right-of position) (instance-of right-of AsymmetricRelation) (inverse right-of left-of) (documentation right-of "This is a cognitive primitive, derived from the left/right schema. (&%right-of ?OBJ1 ?OBJ2) means that ?OBJ1 is to the &%right-of ?OBJ2.") (subrelation-of traverses position) (documentation traverses "(&%traverses ?OBJ1 ?OBJ2) means that ?OBJ1 crosses or extends across ?OBJ2. Note that &%crosses-over and &%crosses-through are subrelations of &%traverses.") (subrelation-of under position) (instance-of under AsymmetricRelation) (documentation under "This is a cognitive primitive, derived from the up/down schema. (&%under ?OBJ1 ?OBJ2) means that ?OBJ1 is &%under ?OBJ2.") (=> (under ?OBJ1 ?OBJ2) (or (on ?OBJ2 ?OBJ1) (above ?OBJ2 ?OBJ1))) ;; END FILE ;;;;;;;;;;; ;; NOTES ;; ;;;;;;;;;;; ;; The following is a provisional addition to the top level of the ontology. ;; The purpose of this addition is to accommodate normative notions. If this ;; addition is embraced by the other SUO participants and if it is deemed ;; acceptable in other respects it will be commented out. ;; (subclass-of Normative Entity) ;; (subclass-of NormativeAttribute Normative) ;; (subclass-of NormativeAttribute Attribute) ;; (subclass-of Standard NormativeAttribute) ;; (subclass-of Requirement Standard) ;; (subclass-of Obligation NormativeAttribute) ;; (documentation Obligation "This is just a placeholder for now. It's not clear what ;; the real representation will be. One possibility is to have it be a Microontology a ;; la Cyc. The things that the Agent is obligated to make true are true in the ;; Obligation. ;; Another possibility is to make Obligations individual propositions that the Agent must ;; make true, or individual actions the agent must perform.") ;; (subclass-of Agreement NormativeAttribute) ;; (documentation Agreement "The class of things which consititute an agreement ;; between two or more agents. Agreements may be implicit or explicit. They may ;; be written or verbal or gestural.") ;; (subclass-of JudgementOfEtiquette NormativeAttribute) ;; (subclass-of AestheticJudgement NormativeAttribute) ;; (subclass-of InstitutionalObligation Obligation) ;; (subclass-of PersonalObligation Obligation) ;; (subclass-of ReligiousObligation InstitutionalObligation) ;; (subclass-of LegalObligation InstitutionalObligation) ;; (subclass-of RegulationOrLaw LegalObligation) ;; (documentation RegulationOrLaw "An intellectual product resulting from legislative ;; or regulatory activity.") ;; ;; (=> ;; (instance-of ?X RegulationOrLaw) ;; (exists (?Y) ;; (and ;; (result ?Y ?X) ;; (instance-of ?Y RegulatoryActivity)))) ;; ;; (=> ;; (instance-of ?X RegulationOrLaw) ;; (exists (?Y) ;; (and ;; (affects ?X ?Y) ;; (or ;; (instance-of ?Y Organization) ;; (instance-of ?Y Group))))) ;; ;; (subclass-of Contract Agreement) ;; (documentation Contract "A formal agreement.") ;; (subclass-of PurchaseContract Contract) ;; (documentation PurchaseContract "An contract between two agents in which ;; one agent agrees to render the other some good or service in exchange for ;; currency.") ;; (subclass-of ServiceContract Contract) ;; (documentation ServiceContract "The class of contract where some agent agrees ;; to perform some service for another agent usually for some price") ;; (subclass-of Warranty ServiceContract) ;; (documentation Warranty "A class of contracts that state the cirumstances under ;; which defects in the product will corrected for no charge. These warrantees usually ;; include how long after the product is purchased that the agreement will hold and ;; what types of things are not included in the warranty. It should also include ;; descriptions of actions that invalidate the warranty.") ;; (subclass-of Promise Agreement) ;; (documentation Promise "An informal agreement.") ;; (subclass-of obligationIn TernaryPredicate) ;; (nth-domain obligationIn 1 KIF-Formula) ;; (nth-domain obligationIn 2 Agent) ;; (nth-subclass obligationIn 3 NormativeAttribute) ;; (documentation Obligation-In "As qualified by the normative attribute, this agent ;; has the following obligation") ;; The following is another provisional addition to the top level of the ;; ontology. This addition locates the crucial notions of 'WavePropagation', ;; 'ElectronicWave', and 'ElectronicSignal' within the existing framework of ;; concepts. ;; (subclass-of WavePropagation Process) ;; (subclass-of ElectronicWave WavePropagation) ;; (subclass-of ElectronicSignal ElectronicWave) ;; (subclass-of ElectronicSignal ContentBearingObject)