Olog
The theory of ologs is an attempt to provide a rigorous mathematical framework for knowledge representation, construction of scientific models and data storage using category theory, linguistic and graphical tools. Ologs were introduced in 2012 by David Spivak and Robert Kent. Etymology
The term "olog" is short for "ontology log". "Ontology" derives from onto-, from the Greek ὤν, ὄντος "being; that which is", present participle of the verb εἰμί "be", and -λογία, -logia: science, study, theory. Mathematical formalism
An olog  for a given domain is a category whose objects are boxes labeled with phrases (more specifically, singular indefinite noun phrases) relevant to the domain, and whose morphisms are directed arrows between the boxes, labeled with verb phrases also relevant to the domain. These noun and verb phrases combine to form sentences that express relationships between objects in the domain. In every olog, the objects exist within a target category. Unless otherwise specified, the target category is taken to be , the  category of sets and functions. The boxes in the above diagram represent objects of . For example, the box containing the phrase "an amino acid" represents the set of all amino acids, and the box containing the phrase "a side chain" represents the set of all side chains. The arrow labeled "has" that points from "an amino acid" to "a side chain" represents the function that maps each amino acid to its unique side chain. Another target category that can be used is the Kleisli category  of the power set monad. Given an ,  is then the power set of A. The natural transformation  maps  to the singleton , and the natural transformation  maps a set of sets to its union. The Kleisli category  is the category with the objects matching those in , and morphisms that establish binary relations. Given a morphism , and given  and , we define the morphism  by saying that  whenever . The verb phrases used with this target category would need to make sense with objects that are subsets: for example, "is related to" or "is greater than". Another possible target category is the Kleisli category of probability distributions, called the Giry monad. This provides a generalization of Markov decision processes. Ologs and databases
An olog  can also be viewed as a database schema. Every box (object of ) in the olog is a table  and the arrows (morphisms) emanating from the box are columns in . The assignment of a particular instance to an object of  is done through a functor . In the example above, the box "an amino acid" will be represented as a table whose number of rows is equal to the number of types of amino acids and whose number of columns is three, one column for each arrow emanating from that box. Relations between ologs
"Communication" between different ologs which in practice can be communication between different models or world-views is done using functors. Spivak coins the notions of a 'meaningful' and 'strongly meaningful' functors. Let  and  be two ologs, ,  functors (see the section on ologs and databases) and  a functor. is called a schema mapping. We say that a  is meaningful if there exists a natural transformation  (the pullback of J by F). Taking as an example  and  as two different scientific models, the functor  is meaningful if "predictions", which are objects in , made by the first model  can be translated to the second model . We say that  is strongly meaningful if given an object  we have . This equality is equivalent to requiring  to be a natural isomorphism. Sometimes it will be hard to find a meaningful functor  from  to . In such a case we may try to define a new olog  which represents the common ground of  and  and find meaningful functors  and . If communication between ologs is limited to a two-way communication as described above then we may think of a collection of ologs as nodes of a graph and of the edges as functors connecting the ologs. If a simultaneous communication between more than two ologs is allowed then the graph becomes a symmetric simplicial complex. Rules of good practice
Spivak provides some rules of good practice for writing an olog whose morphisms have a functional nature (see the first example in the section Mathematical formalism). The text in a box should adhere to the following rules:

 begin with the word "a" or "an". (Example: "an amino acid"). refer to a distinction made and recognizable by the olog's author. refer to a distinction for which there is well defined functor whose range is , i.e. an instance can be documented. (Example: there is a set of all amino acids). declare all variables in a compound structure. (Example: instead of writing in a box "a man and a woman" write "a man  and a woman  " or "a pair  where  is a man and  is a woman"). The first three rules ensure that the objects (the boxes) defined by the olog's author are well-defined sets. The fourth rule improves the labeling of arrows in an olog. Applications
This concept was used in a paper published in the December 2011 issue of BioNanoScience by David Spivak and others to establish a scientific analogy between spider silk and musical composition. See also
 Hypergraph
 Modeling language
 Ontology language
 Operad theory
 Orgology
 Universal algebra
 Universal logic

References

External links
 
 

Mathematical concepts
Ontology (information science)