Guidelines for logical definitions
OBO Academy description of equivalent classes and logical definitions
Note that 'logical definitions' used to be referred to as 'cross-products', but we have largely abandoned this nomenclature.
Logical Definitions (LD), also known as Equivalence Axioms1, are computable definitions of the genus-differentia form. A logical definitions can be added when there is a criteria that can be specified that distinguishes the GO class from its parent and siblings. Hence, top-level classes cannot have equivalence axioms, since a genus from GO is needed.
A logical definition consists of:
- a genus: the broader class to which the term belongs (the 'parent' or 'superclass'), and
- one or more differentiae: the property/ies that distinguish the term from its superclass and from other members of the same class (siblings). Logical definitions can be used these to automate classification in the ontology using reasoning software.
- Note that only the axioms strictly needed to create a necessary and sufficient distinction between a term and its superclass should be included in the logical definition. If other relations should be added, these should be added as asserted superclasses.
Logical definitions must be 'necessary and sufficient' to define a GO class
- For some background see the Necessity and sufficiency article in Wikipedia.
- Necessity: means that all of the conditions that make up the logical definition must be true for the term. For example, if we used the statement "transport and ('transports or maintains localization of' glucose)" from the 'glucose transmembrane transport' above, it describes a necessary condition because in order to carry out glucose transmembrane transport, it is necessary to carry out glucose transport. If we had used "transport and ('transports or maintains localization of' D-glucose)", this would not have been necessary. It is not necessary to transport D-glucose for glucose transmembrane transport to occur. L-glucose could also be transported.
- Sufficiency: is the minimal statement needed to make the logical definition true for the term. For example, 'hexose transmembrane transport' is a transmembrane transport and 'has primary input' some hexose. The primary input is sufficient to distinguish this term from its parent.
Logical definitions and textual definitions
Logical and textual definitions should be broadly aligned. The textual definition can provide additional information, but all information contained in the logical definition should also be included in the textual definition. See also Guidelines for GO textual definitions.
Design Patterns to standardize logical definitions
Design patterns are rules that ensure that the logical definitions and inferences made from them are consistent. GO design pattern can be viewed here: Design patterns rendered docs index
regulation of endocytosis
- regulation of endocytosis
- genus: biological regulation
- differentia: and regulates some endocytosis
This term has an assertion for 'regulation of cellular component organization' - is this right?
Likewise for positive and negative regulation:
- positive regulation of endocytosis
- genus: biological regulation
- differentia:positively regulates some endocytosis
- negative regulation of endocytosis
- genus: biological regulation
- differentia: and negatively regulates some endocytosis
- glucose metabolic process
- genus: metabolic process
- differentia: has primary input or output some glucose
Has the asserted class 'hexose metabolic process'; this should be inferred from the logical definition
- glucose catabolic process
- genus: catabolic process
- differentia: has primary input some glucose
- glucose biosynthetic process
- genus: biosynthetic process
- differentia: has primary output some glucose
Other examples (with no Design pattern)
mitochondrial DNA replication
mitochondrial DNA replication is DNA replication that occurs in a mitochondrion
- genus: DNA replication
- differentia: occurs in some mitochondrion
[Term] id: GO:0006264 name: mitochondrial DNA replication namespace: biological_process def: "The process in which new strands of DNA are synthesized in the mitochondrion." [GOC:ai] is_a: GO:0006261 ! DNA-dependent DNA replication intersection_of: GO:0006260 ! DNA replication intersection_of: occurs_in GO:0005739 ! mitochondrion
- Note that this term has/had an asserted superclass, 'DNA-templated DNA replication'. The fact that there is an asserted class in the same branch of the ontology may be an indication that something is incorrect in the ontology. In this case, the genera should probably be 'DNA-templated DNA replication', not 'DNA replication'.
lysosomal membrane is the membrane that surrounds a lysosome
- genus: membrane
- differentia: and 'bounding layer of' some lysosome
[Term] id: GO:0005765 name: lysosomal membrane namespace: cellular_component def: "The lipid bilayer surrounding the lysosome and separating its contents from the cell cytoplasm." [GOC:ai] is_a: GO:0005774 ! vacuolar membrane intersection_of: GO:0098805 ! whole membrane intersection_of: bounding_layer_of GO:0005764 ! lysosome relationship: part_of GO:0005764 ! lysosome
Types of differentia classes allowed
Differentiae can be made with terms from ontologies other than GO.
Examples with cell ontology:
- megasporocyte nucleus is a nucleus that is part of a megasporocyte
[Term] id: GO:0043076 name: megasporocyte nucleus namespace: cellular_component def: "The nucleus of a megasporocyte, a diploid cell that undergoes meiosis to produce four megaspores, and its descendents." [GOC:jl, ISBN:0618254153] synonym: "megaspore mother cell nucleus" EXACT  is_a: GO:0005634 ! nucleus intersection_of: GO:0005634 ! nucleus intersection_of: part_of PO:0000431 ! megasporocyte
- osteoblast development is cell development that results in the development of an osteoblast
[Term] id: GO:0002076 name: osteoblast development namespace: biological_process def: "The process whose specific outcome is the progression of an osteoblast over time, from its formation to the mature structure. Osteoblast development does not include the steps involved in committing a cranial neural crest cell or an osteoprogenitor cell to an osteoblast fate. An osteoblast is a cell that gives rise to bone." [GOC:dph] is_a: GO:0048468 ! cell development intersection_of: GO:0032502 ! developmental process intersection_of: results_in_development_of CL:0000062 ! osteoblast relationship: part_of GO:0001649 ! osteoblast differentiation
Logical definitions for MF that include 'binding': use 'has_part' some binding (see https://github.com/geneontology/go-ontology/issues/14266)
Using the reasoner in Protégé
The inferences generated by the logical definitions will only be shown in Protege if the Reasoner in on. We use the ELK reasoner. To turn on the reasoner in Protege, go to the
Reasoner menu, and make sure ELK0.4.3 is checked. Then, again in the
Reasoner menu, click
To view the inferences generated by the logical definitions, select
Inferred (from the default 'asserted') in the top-right menu in the 'Classes' window.
Other pages that need updating
1 Equivalence Axioms can also be used in a broader meaning, for example to assert that two classes from different ontologies are equivalent: PR:protein = CHEBI:protein.