|
IFF Language |
||||||||||||||||||||||||||||||
First-order |
||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||
OverviewTuplesFor any set A, a tuple t of A-elements is a collection of (possibly duplicate) A-elements that are indexed by natural numbers. The indexing elements of t form a closed interval of natural numbers [0, n] = arity(t) Í Natno called the arity of t. The number n is called the valence of t, and denoted valence(t). More precisely, a tuple t is a pair consisting of a natural number valence(t) Î Natno called the valence of t and a map (function) projector(t) : arity(t) ® A called the projector of t. We use the exponential set notation t Î Aarity(t) for the set of tuples of a particular arity. If A[0, n] is defined to be the set of A-tuples with arity A[0, n], then the collection of all A-tuples is the disjoint union tuple(A) = ∑n A[0, n]. Although tuples are actually maps, we often use the tuple notation t = (tx)xÎarity(t) for an individual tuple. The notion of tuple allows us to define a notion that will play an important role in what follows – that of a language. LanguageAn ontological language L is a hypergraph; that is, a triple L = átyp.ent(L), typ.rel(L), ¶typñ consisting of
An alternate definition may be more convenient. An ontological language is a triple L = áent(L), rel(L), {¶0, ¶1, …, ¶n, …}ñ consisting of
ModelA ontological model A = áent(A), rel(A), ¶ñ is either a hypergraph of classifications or a classification of hypergraphs. It is a two dimensional structure consisting of o a
hypergraph of instances inst(A) = áinst.ent(A), inst.rel(A), ¶instñ; o a hypergraph of types typ(A) = átyp.ent(A), typ.rel(A), ¶typñ; o an entity classification ent(A) = áinst.ent(A), typ.ent(A), ⊨entñ; o a relation classification rel(A) = áinst.rel(A), typ.rel(A), ⊨relñ; and o a
tuple classification projection ¶ = á¶inst, ¶typñ : rel(A) ⇉ tuple(ent(A)). Classification projections are a morphism for classifications
with covariant functions – versus the contravariant functions in the
definition of an infomorphism.
|
||||||||||||||||||||||||||||||
Core Classes
Specification classes correspond
to what is ordinarily understood to be the core or base ontology. See for
example the CycL KERNEL KB
and the SUO-KIF Appendix B -
Structural Ontology. Some examples of specification classes are the
following: Type, Individual, Relation, Natno,
signature,
classification and subtype.
Specification classes might also be called basic classes, since this is where
an ontology begins. Representation classes (which include specification classes) are the classes needed for the representation of ontologies in the Information Flow Framework. Specification classes of a languageo Natno The set of natural numbers is the indexing class for the signatures of relations. It needs only the ordinal nature of the natural numbers. o Entity This is the set of all entity types specified in a language. It provides the base for the set of all entity types represented in a language. o Relation This is the set of all relation types specified in a language. It provides the base for the set of all relation types represented in a language. o signature This basic relation represents the signature of all the relation types specified in a language in terms of all the entity types specified in the language. Representation classes of a languageo typ.ent(L) This is the set of all the entity types represented in a language. The set typ.ent(L) contains the set Entity as a subset. o typ.rel(L) This is the set of all the relation types represented in a language. The set typ.rel(L) contains the set Relation as a subset. typ.ent(L) and typ.rel(L) are either specified at the base or generated during various limit/colimit constructions on languages. These types could have one of several forms: a basic specified type, a tagged type of a disjoint union, a quotient type based on an invariance, etc. o sign.typ This relation represents the signature of all the relation types represented in a language in terms of all the entity types represented in the language. The relation sign.typ contains the relation signature as a subrelation. Specification classes of a modelo Individual This is the set of all entity instances specified in a language. It provides the base for the set of all entity instances represented in a language. The set Individual = indiv(A) is often called the universal domain. Elements of indiv(A) are called individual designators. Individual designators, thought of as identifiers for individuals, represent either objects or data values. A locator represents an object: a marker “‘ISBN‑0‑521‑58386‑1’”, an indexical “you” or a name “‘K. Jon Barwise’”. A data value is represented as a literal: a string “xyz”, a number “‘3.14159’”, a date “‘1776/07/04’”, etc. o Record This is the set of all relation instances specified in a language. It provides the base for the set of all relation instances represented in a language. Elements of the set Record = rec(A) are called records or tuples. o argument This basic relation represents the argument of all the records specified in a language in terms of all the individuals specified in the language. o classification This basic relation represents the sum of two subtypes – the classification of all the individuals by entity type, and the classification of all the records by relation type. Representation classes of a modelo inst.ent(A) This is the set of all the entity instances represented in a language. The set inst.ent(A) contains the set Individual as a subset. o inst.rel(A) This is the set of all the relation instances represented in a language. The set inst.rel(A) contains the set Record as a subset. o sign.inst This relation represents the signature of all the relation instances represented in a language in terms of all the entity instances represented in the language. The relation sign.inst contains the relation argument as a subrelation. o class.ent This relation represents the
classification of all the entity instances represented in a language in terms
of all the entity types represented in the language. The relation class.ent contains as a subrelation the
restriction of the relation classification
to entities. o class.rel This relation represents the classification of all the relation instances represented in a language in terms of all the relation types represented in the language. The relation class.rel contains as a subrelation the restriction of the relation classification to relations.
| ||||||||||||||||||||||||||||||