GO Genesis is a web tool to trace back the origin of biological processes and molecular functions from Gene Ontology (GO). The three ontologies of the GO database are comprised of terms that can be annotated to gene products. Since these gene products are specific to a given species, it is possible to determine all of the organisms that contain gene products annotated to any given GO term. Thus, we unravelled the origin of every biological process and molecular function by the determining the lowest common ancestor (LCA) clade on the tree of life that originated all of the organisms annotated to each term.

Each ontology on GO is a directed acyclic graph, on which more generic terms are ancestors to more specific ones. Initially, every GO term had its origin independently determined. However, given the fact that an annotation to a given term does not automatically counts as an annotation for every ancestor of this term, there are cases on which a parent/generic term can be dated as more recent than a child/specific one, which is not in accordance to logic. To fix that, we recursively analyzed the origin of every term in relation to its imediate children; Whenever a parent term was more recent than one of its child terms, the parent term's origin was recalculated as the LCA between the parent's previously determined origin and the origin of its child.

Click on "Term search" on the menu above to search a GO term. A graph will be displayed showing the ancestor tree of the requested term, as well as the term's immediate children. The rectangles on the graph will be filled following a color palette according to their LCA. The requested term will present a wide red stroke, whereas all other terms will be given a regular black stroke. Some terms have been annotated to very few species (sometimes, they haven't been annotated at all). The fewer the species that have been annotated, the less accurate the LCA for the term will be. Any term annotated to less than 10 species will appear with a dashed stroke on the graph, and a warning message will appear on the results field. Consider using a more annotated ancestor term when attempting to determine the origin of such terms!