An O(n.m) algorithm for calculating the closure of lca-type operators
Résumé
The least common ancestor on two vertices, denoted lca(x,y) , is a well defined operation in a directed acyclic graph (dag) G. We introduce Ulca(S) , a natural extension of lca(x,y) for any set S of vertices. Given such a set So , one can iterate Sk+1=Ulca(Sk) in order to obtain an increasing set sequence. G being finite, this sequence has always a limit which defines a closure operator. Two equivalent definitions of this operator are given and their relationships with abstract convexity are shown. The good properties of this operator permit to conceive an O(n.m) time complexity algorithm to calculate its closure. This performance is crucial in applications where dags of thousands of vertices are employed. Two examples are given in the domain of life-science: the first one concerns genes annotations' understanding by restricting Gene Ontology, the second one deals with identifying taxonomic group of environmental DNA sequences.
Origine : Fichiers produits par l'(les) auteur(s)
Loading...