HAL Id: hal-00797153
https://hal.archives-ouvertes.fr/hal-00797153
Submitted on 5 Mar 2013
HAL is a multi-disciplinary open access
archive for the deposit and dissemination of
sci-entific research documents, whether they are
pub-L’archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
lca-type operators
Vincent Ranwez, Stefan Janaqi, Sylvie Ranwez
To cite this version:
Vincent Ranwez, Stefan Janaqi, Sylvie Ranwez. An O(n.m) algorithm for calculating the closure of
lca-type operators. Ars Combinatoria, Waterloo, Ont : Dept. of Combinatorics and Optimization,
University of Waterloo, 2012, 104, pp.107-128. �hal-00797153�
1
An
123 4 56 algorithm for calculating the closure of lca-type operators
Vincent Ranwez
1, Stefan Janaqi
2, Sylvie Ranwez
21
Institut des Sciences de l’Evolution de Montpellier (ISE-M), UMR 5554 CNRS, Université Montpellier II, place E. Bataillon, CC 064, 34 095 Montpellier cedex 05, France.
E-mail: [email protected] 2
LGI2P/EMA Research Centre, Site EERIE, Parc scientifique G. Besse, 30 035 Nîmes cedex 1, France. E-mail {sylvie.ranwez, stefan.janaqi}@mines-ales.fr}
1
Abstract— The least common ancestor on two vertices, denoted 7892AB C6, is a well defined operation in a directed acyclic graph (dag) D. We introduce EF26, a natural extension of 7892AB C6 for any set of vertices. Given such a set , one can iterate EF26 in order to obtain an increasing set sequence. D 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 123 4 56 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.
Keywords—Directed acyclic graph, Least common ancestor, Greatest common descendant, Closure operator, Abstract
Convexity.
1
I
NTRODUCTIONIn this paper we address the problem of efficiently computing the closure of lca-type operators in directed acyclic graphs (dag) D 2B 6. Such graphs appear in numerous applications such as: ontologies (se-mantic representation), phylogeny networks (speciation histories) or inheritance graphs (object program-ming languages). A least common ancestor of two vertices A and C, denoted 7892AB C6, is an ancestor of both verticesBthat has no proper descendant that is also an ancestor of A and C. Now, let be a set of vertices of interest of D. On one side, the set of all vertices contains all 7892AB C6 for any couple AB C but, this does not help to focus on relevant parts of D containing . On the other side, filtering D to keep only vertices of gives few insight about the relationships between vertices of . In order to pre-serve those relationships, one can consider the least overset of , that contains all 7892AB C6 for any AB C . For people used to convexity concepts, this sounds like: “… for any two points in , the segment relying them lies in ”. Actually, we show that it does not just “sounds as” and we define a set that really satisfies this property. First we define the operator:
EF26 B7892AB C6.
Then, we show that the closure of this operator, denoted by verifies the four axioms of convex hull (see [1]):
(U.1) , ! ;
(U.2) (monotonicity) ! ", ! "; (U.3) (idempotence) #$ ;
(U.4) (finiteness) if A , then there is a finite set % ! such that A EF2%6.
The sets that are equal to their closure ( ) are called convex and form a convex space verifying the following properties (this is a classical result of convexity theory):
(C.1) , are convex;
(C.2) if &B ' are convex, then & ( ' is convex;
(C.3) if &)B are convex and &)! &) for * +B ,B - then ).&) is convex;
Thus, EF26 and its closure have nice mathematical structures that are exploited in our greedy algorithm
to reach a low time complexity of order 123 4 56. Starting with a set of vertices and the topological
easy to define and calculate similarly the E670 8712345 (Greatest Common Descendant). One has just
to reverse all the edges of D and apply the EF results and algorithm.
Of course, the operator 7892AB C6 is not new and there are several good algorithms to calculate it. To the best of our knowledge, all the efficient approaches to calculate 7892AB C6 pass through the computation of shortest paths. The main result of [2] is that, for any couple of vertices AB C, a representative 789 can be computed with time complexity 128896 with : ,;<== (see [2, 3]). We stressed the word
‘representa-tive’ because a couple of vertices can have more than one 789 and, as shown further, one of the main characteristics of our algorithm is that it identifies all of them. Yet, the construction of [2] is interesting on its own, since it transforms the 789 searching to a shortest path problem. An improved version of the “one representative lca” algorithm is given with : ,;>?> (see [4]). This optimization relies on a novel reduction of all-pairs 789 problem to the problem of finding maximum witnesses for Boolean matrix product. As the domain is active, actually [5] have given an algorithm that calculates all 7892AB C6 for all pairs of vertices with a mean time complexity 1288@71A71A28866 and worst time complexity 1288@;@@BB6.
Remind that we need the EF0 8712345 of a set (denoted by ) and a straightforward way to use the
above subroutines would have a complexity of at least 1288@;@@BB6 for computation time and 1288"6 for
memory space (in order to store pre-computed 789). Our algorithm doesn’t need to calculate 7892AB C6 for any couple of vertices AB C. It constructs by using the closure and convexity axioms above, in particular (U.2), (U.3) and (C.2), (C.3). This solution has lower time − 128CD8886 − and space −128CD8886− com-plexity. The advantage of this solution is even more relevant in practice, since for most real cases 8E8 F 88 and for most dag 88 F 8"8.
The paper is organized as follows: section 2 gives the definitions and properties of EF0 8712345;
sec-tion 3 gives the algorithm to efficiently compute this closure and its proof of correctness; applicasec-tions of our results are provided in section 4; concluding remarks are given in section 5.
2 L
EAST COMMON ANCESTOR OPERATOR AND ITS CLOSURE2.1 Preliminary definitions
In this section, we give the definitions of two generalized common operators: least common ancestor (789) and greatest common descendant (gcd) for a direct acyclic graph (dag). 23415677689AB1C459A9D96AE1 F4169C4C1D61F41D341F41E4756ADF9A4C1615D341C459A9D96AE16A1BF3E1E4411Given a dag D 2B 6 and an edge 2AB C6 we say that A is the child and C is the father. 2341123456441GHI2/617893456441 GH2/61651F14D41/19E1D341A 416514CB4E189D3134FC1/1DF971/1!34A1D16ADF9AE1F1C94D4C1/"3 FD3"1D3414D41319E1EF9C1D61 41FA1A2B4C9761651/1FAC1D3414D41/19E1F134CB423A2916513161F1A6A4D#1 E E4D1J1651"1D341E BF31651D1836E414D41E4D19E1JFAC1836E414CB41E4D19E1D341E4D16514CB4E1651D1 D3FD13F41 6D314ACE19A1J19E1F774C1D341E BF31651D11238B431 #1J1FAC19E1C4A6D4C1DKJL11
Given a vertex / of the dag D 2B 6, the set &H2/6 denotes the subset of ancestors of / in D. The
generalization of this definition to a set ! of vertices is straightforward, i.e. &H26 MN&H2/6. For simplicity, we will omit index D from the notations whenever there is no ambiguity.
Definition 2.1.1. [2] The least common ancestors 78926 of a vertex subset 1O with respect to a dag
D 2B 6 are the vertices 3 &26, such that GPI236 Q in the graph 1 RK&26L induced by &26.
This definition generalizes the widely known concept of least common ancestor (see [2, 3]) for a couple of vertices, i.e. 7892SAB CT6 7892AB C6. This is sometimes called least common semi-strict ancestors $. It follows immediately from Definition 2.1.11D3FD A 7892AB C6 if there is a directed (C, A)-path. By ex-tension, we define 7892AB A6 A for all A.
Note that, unless the dag D is a tree, 7892AB C6 may contain several nodes and the existence of a pair of nodes AB C such that 7892AB C6 78926 is not guaranteed. For instance, in the example presented in Fig. 1, UVW2SX+B X,B XYT6 SZ+B Z,T while UVW2X+B X,6 S[+B &,T, UVW2X+B XY6 [, and UVW2X,B XY6 SZ+B [YT.
Fig. 1. Illustration1 of the lca operator
An alternative definition of the 789 in terms of partially ordered sets, has been proposed by [8].
2.2 Two equivalent definitions of \\\\UVWUVWUVWUVW0VU]^_`a0VU]^_`a0VU]^_`a0VU]^_`a in a dag
Closure operators are widely used in mathematics, especially in geometry. The best known example comes from convexity in a Euclidian space. A lot of properties follow from the fact that a convex set, for example a convex polygon"1 can be obtained by giving a finite set of points and the segment operator 22AB C6. %1 AFDF71 &4ED96A1 9E1 834D341 D34E41 B464D91 64D94E1 F41 4E44C1 834A1 4D4AC9AB1 6A49D#1C459A9D96A1D61BF3E1'D1DAE16D1D3FD189D31F179DD741E4D1651F96E"1F176D1651B66C164D94E1651 6A49D#1("1)"1(*1FA1 41DFAE6E4C19A1C9E4D41EDD4E17941BF3E12341934ED1DFAE6E9D96A19E1 6 DF9A4C1 561 BF3E1 4AC684C1 89D31 9AD4F71 6A49D94E1 83441 D341 A6D96A1 651 E4B4AD122AB C61 9E1 4 7F4C1 #1D3FD16519AD4F71b2AB C61D3FD19E1D341 A31651D341E36D4ED1FD3E1 4D844A1A1FAC1C19A1D341B94A1 BF31see [10]1'D19E16D1651D341E641651D39E1F41D6147641D34E4164D94E1+44D3474EE"1D341C4 59A9D96A165176E41FAC19DE164D94E1E368174F7#1D3FD1D34E416 ,4DE1F416A41 1 'A1D341496E1E4D96A"184169C4C1FA19AD9D941FAC1AFDF71C459A9D96A1651D34174FED166A1FA4E D6E1651F1E4D16514D94E1C4A6D4C1FE1789261-4D"19A1F79FD96AE"1834A16AE9C49AB1F1E4D16514D94E1"1 44#174FED166A1FA4ED61651F1F916514D94E165119E1F14#14D41D61BF9A19AE9B3D19AD6147FD96AE39E1 F6AB14D94E16511!41D3E1A6819AD6C41F1A48164FD61D3FD1F4E1E41651D341789164FD61FAC1 B4A4F79.4E19D1D61F184771C459A4C176E4164FD61
123454647589A9ABA1/4D11 41F1E E4D16514D94E1651D12341EF0 1c549d1416A119E1C459A4C1FE01 EF26 B7892AB C61 1 (1
1
'D1567768E1561D39E1C459A9D96A1D3FD11EF261FAC1D3FD1D341EF0 1c549d1419E16A6D6A6E"194011 & ! ' e EF2&6 ! EF2'61
23419B111 47681977EDFD4E1D341C459A9D96A1651D341EF0 1c549d141FAC143FE9.4E19DE1C95544A4189D31 D341 EDFACFC1 DBA1 64FD61 'A1 D39E1 4F74"1 B94A1 D341 E4D1 Sf+B f,B fYT"1 EF26 S'+B ',B 'YB f+B f,B fYT"183974178926 S&+B &,T11
1
'A1 E641 FE4E"1 3F9AB1 6A7#1EF261 FAC261 789261 9E1 A6D1 4A6B31 D61 AC4EDFAC1 F771 47FD96AE39E1 F6AB14D94E16511331F1FE419E1C49D4C19A19B14"183441D3414D41&19E1347571561AC4EDFAC9AB1
f+1FAC1f,147FD96AE39E1 D19E1A49D3419A7C4C19A1EF261A619A178926164D41&19E16519AD44ED1E9A41&1 9E1D341DBA1651'+1FAC1',"1839319A1DA1F41DBA1651D8614D94E16511239E174FCE1E1D61D3415677689AB1C459A9 D96A1651D341EF0 871234516511 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fig. 2. EF and 789 are two different operators.
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fig. 3. Illustration of EF0 8712345
/4D11 41F1E E4D16514D94E1651D1FAC174D16AE9C41D3419A4FE9AB1E4D1E4&4A41C459A4C1 #01
1
1FAC1) EF2)6B * QB +B -1 1
39A41D19E159A9D41FAC1g*)! )"1D34419E1F1A 418B Q h 8 h 881E31D3FD1gi j 8B EF261239E1 5969AD16159E4D19E14F34C1 4FE41651D3416A6D6A99D#1651EF0 1c549d141'A15FD"16A41D39E147F D96A1367CE1561F1B94A1E19D1367CE1561F771B4FD41F74E136"181FAC11F4184771C459A4C1
1
123454647589A9A9A12341A 41819E1D341BD7C864F12341FAC1D341E4D19E1F774C1D341EF0 871234516511FAC1 9E1C4A6D4C1 #1E1
'D19E174F1561D341123454647589A9AB1D3FD1EF2 6 1FAC1 ! EF261%7E6"1EF19E16A6D6A6E1FAC19D1 49594E1 D341 59A9D4A4EE1 64D#1 4FE41D1 9E1 59A9D41 39A41 7("1 711 FAC1 781 367C1 561 D341 EF0 1c549d14"1D34#1F7E61367C15619DE176E4196464"1 #1C459A9D96A1651D34176E4"1 EF26 EF#$"1D3445641D3419C46D4A41F9617419E1F7E61EFD9E594C1 1 239E1C459A9D96A169C4E1F1E9741FAC19A455994AD:19D4FD941F7B69D31D616D41EF0 871234512341 D9416749D#1651D39E1F7B69D319E147FD4C1D61D34176E419AC41'A1D341E9741FE41834A1D19E1F1D44"1 D34176E419AC41FAA6D1 41B4FD41D3FA1(123415677689AB174F1E368E1D3FD1D39E19E1A6176AB41D419A1 D341B4A4F71FE41
C2DDE8 9A9ABA1 61 F1 3A51D 2B 61FAC1F1E4D1 ! "FD341A 416519D4FD96AE1A44C4C1D616 DF9A1E19E1 128861
1
F773A1 'D1 9E1 74F1 D3FD11 9A4FE4E1 89D31 FD1 74FED1 6A41 4D41 FD1 4F31 9D4FD96A"1 34A41 69AB1 D3FD1 8 h 288 0 881;A1D3416D3413FAC"1FE1E368A1 #1D3414F741 4768"1B1FA1 41FE17FB41FE1288 0 886k,1 'D1567768E1D3FD1D341A 416519D4FD96AE1A44C4C1D616 DF9A1E19E1128861
1 1 1 1 1 1 1 1
Fig. 4. The closure index can be proportional to 88.
S&B 'T, at iteration k two vertices S&B 'T are added so that S&B - B &B 'B ; ; 'T.
23441 9E1 FA1 F7D4AFD941 C4E4AC9AB1 8F#1 D61 C459A41EF0 87123451 61 D39E"1 74D1 D341 5F97#1 651 EF0 87125G1E4DE16ADF9A9AB11 41C4A6D4C1 #01 1 l26 Sm181m93Gm EF2m6T1 11 1 +68"1841E3681D3FD1D3415F97#1l26149594E1D341F96E1<("1<11FAC1<412341F961<(19E16 96E1 561D341C459A9D96A12341F961<419E16A494C169B9AF77#19A16C41D61D4FD1D341FE416519A59A9D419A4FE 9AB1E4D1E4&4A4E19A16AD9A6E1EF4E1%E1841F41C4F79AB189D3159A9D41BF3E"1D39E1F9619E16 96E7#1 49594C1+44D3474EE"19D19E1D341 FE9E165161B44C#1F7B69D31 4FE4"1834A1D4FD9AB1D3419A4FE9AB1 E4D1E4&4A41651EF0 87125G11E4DE"16A7#1D3417FED16A413FE1D61 41ED64C15615D341D4FD4AD12341567 7689AB174F1B94E1D3416651651F961<11
8
C2DDE89A9A9A8l269E1A6A4D#1FAC176E4C1561D3419AD4E4D96A"194nB o l26 e n ( o l261
1
F7731l269E1 A6A4D#1 E9A41 F 6 96E7#1 476ABE1 D61l261 /4D1E1 A681 641 D3FDnB o l26 e n ( o l261
• 1n ( o1%E11n1FAC11o"11n ( o1 • n ( o EF2n ( o61
o n ( o1E
F2n ( o6"1 #1D341EF1C459A9D96A1
o EF2n ( o61n ( o1239E164E1561D3415FD1D3FD1D341EF14E44E16A6D6A99D#01
1 n ( o1n e EF2n ( o61EF2n6 n1
1 n ( o1o e EF2n ( o61EF2o6 o1
1 EF2n ( o61n93GEF2n ( o61o e EF2n ( o61n ( o111 1 1
1
C2DDE89A9AA12341D861F 641C459A9D96AE1651EF0 87123451F414&9F74AD1 F7731;A41A44C1D61E3681D3FD1p E1
• p1E1=#1C459A9D96A"1E EF2E6"15D34641D3416A6D6A99D#1651D341E4D1E4&4A41B - B E1 4AE4E1D3FD11E123445641E l26"1D3E169AB1D3FD1p1E11
• E1p1=#1C459A9D96A"119E19A7C4C19A144#1E4D1651l261FAC1D3E19A1D34919AD4E4D96AE1'D1567 768E1D3FD11p"1FAC1D3445641EF261EF2p6"183931FA1 41489DD4A11p1%7#9AB1D341 EF1 64FD61 D61 6D31 D4E1 74FCE1 D61"1p"1@1p1FAC1E616A1AD9711p"1D3E169AB1D3FD1 E1p111
1
234E41C459A9D96AE1FAC164D94E169C41D3415F486156161F7B69D311
3 A
NE
FFICIENT ALGORITHM TO COMPUTE\
\\
\
rXZrXZrXZrXZssss
XrtC\uvXrtC\uvXrtC\uvXrtC\uv'A161F79FD96AE"18413F414A6AD44C13A5C1D3FD1F#16ADF9A1E44F71D36EFAC16514D94E123E"1 455994AD1F7B69D3E1F41A44C4C1D616D41D341EF0 87123451%E14AD96A4C19A19AD6CD96A"1E44F71 B66C1 F7B69D3E1 49ED1 D61 4D9441 F771 D341 4D94E1/ 7892AB C61 !34A1 F77FD9AB1 D341EF0 8712345"1 6A41 67C1 E41 6A41 651 D34E41 F7B69D3E1 FE1 F1 E 6D9A41 239E1 F6F3"1 C4DF974C1 4768"1 69C4E1 F1 EDF9B3D568FC1E67D96A1D61F77FD41D341EF0 871234511FAC1F139B3141 6AC16A1D9416749 D#1234A"18419AD6C41FA16D99.4C1E67D96A1D3FD1DF4E1FCFADFB4E16516A49D#164D94E1FAC1D6 676B9F71 4D41 6C41 2341 F9A1 4E7D1 9E1 FA1 F7B69D31 89D31 F1 86ED1 D941 6749D#1 651 6C41 128E88861
3.1 Straightforward algorithm to compute \\\\UVWUVWUVWUVWssssVU]^_`aVU]^_`aVU]^_`aVU]^_`a
Name: Straightforward_Ulca_closure
Input: a dag D and a set of nodes of D. Result: E.
w xyz{w x
do
|}~w x
for each 2AB C6
|}~w |}~ 7892AB C6x end yz{w |}~0 x w |}~x while yz{ 8 26581
Algorithm 1. A straightforward EF0 8712345 algorithm
'A1%7B69D31(1D341DBA16514F3167416514D94E1651E19E16D4C16A4174FC9AB1D611288"6F77E1651D341 7892AB C61E 6D9A41'D1567768E1D3FD1D341D9416749D#1651D39E1F7B69D319E1 6AC4C1 #1D34146 4EE9AB1651D3413A51D3FD1F7768E16 DF9A9AB1D341DBA1 651D861A6C4E19A16AEDFAD1D941%E14AD96A4C19A1D341 9AD6CD96A"1D341 4ED1A68A1E67D96A1D61D39E1464EE16 7413FE1F11288@;@@BB6186ED1D9416 749D#1FAC14&94E11288"61146#1EF41
1
3.2 Optimized algorithm to compute \\\\UVWUVWUVWUVWssssVU]^_`aVU]^_`aVU]^_`aVU]^_`ain 288886
239E1 E E4D96A1 C4DF97E1 FA1 6D99.4C1 F7B69D31 D3FD1 C4D49A4E1E1 561 F1 3A51D 2B 61 9A1 128E88861 D9416749D#123414#19C4F1651D39E1B44C#1F7B69D319E1D3FD"1D36B31D3441F411288"61674E1651 4D94E"1FD16ED1128861A6C4E1FA1 41FCC4C1D611>FD341D3FA16D9AB1DBA15614F31F916514D94E"1 61B44C#1F7B69D316AE9C4E14F31A6C41FAC1C49C41834D34161A6D19D1ED1 41FCC4C1D611239E1FA1
41C6A41455994AD7#1 #1DF9AB1F1D6676B9F714D416C419AC4C1 #1D3413A511
Name: postOrder Input: a dag G
Result: the list of nodes of G in postOrder
G.postOrder w empty list
for root in G.nodes() if root has no parent
postOrderRec(root)
end
return G.postOrder1
Name: postOrderRec Input: a dag G, a node n of G
Result: add the list of desc(n), in post order, to the
postOrder list of G mark n as visited
for s in children(n) if s has not been visited
postOrderRec(s)
end
append n to the postOrder list of G1
Algorithm 2. Post order implementation.
;1EF0 87123451F7B69D316AE9C4E14D94E19A17C9F76346"1941F14D419E1A4416AE9C44C1 45641 6AE9C49AB1 F771 651 9DE1 C4E4ACFADE1 'AC44C"1 4D94E1 651 F1 3A51 FA1 41 6C44C1 F76AB1 F1 369.6ADF71 79A41 E31D3FD1F771C4E4ACFADE1651F14D41F417F4C1D619DE1745D1!41F771D39E1F17C9F763461E9A4"1FE1E368A19A1 (("16A41FA1 41455994AD7#16 DF9A4C1E9AB1D3416ED6C419AC94E1651F1C4D359ED1E4F31!41B941D39E1 7FEE9F716C49AB1F7B69D31%7B69D3111 47681D61F41D341F41E4756AD4AD1
1
Name: EF0 8712345
Input: a dag D, a set of vertices. Result: .
w P = postOrder(D)
for n in P
236 w // 236 is the set of descendants of 3 present in E
59A236 w 0 // 59A236 is the maximal value 82268 with 2 a child of 3
for s in children(n)
236 w 236 226 (*)
59A236 w max(|226|,59A236)
end if ( (3 ) OR ( 82368> 59A236 ) ) (**) 236 w 236 {n} w S3T end end return
Algorithm 3. Computation of EF0 8712345
F77464758 A9ABA1 677F 7F B7664B924CC1 594A1 D341 9ADE1D 2B 61FAC1"1D341E4D11 4DA4C1 #1 %7B69D31419E1D34176E41651189D314E4D1D61D8D3FD19E1 p E1
1
F7731 /4D11 C4A6D41 D341 FF#1 651 A6C4E1 651 D1 E6D4C1 #1 D341 6ED;C41 5AD96A1 2341 EF0 871234511 F7B69D31B64E1D36B31K+LB - B KiLB - B K88L1BFD349AB"15614F31E1F1E E4D16511C4A6D4C12i61 'D19E174F1D3FD1 28861!41E3681 #19ACD96A1D3FD01
1
2i6 p ( K+; ; iL93G 2KiL6 p ( G5282KiL6B i +B ,B - B 881 41
'A16D34186CE18418FAD1D61E3681D3FD8p19E16AEDD4C1FE1FA19A4FE9AB1E4&4A41?F31D412i61651 D39E1 E4&4A41 9E1 76E4C1 9A1 D341 E BF31 651D19AC4C1 #1D341A6C4E1SK+LB - B KiLT1'A15FD"19D1FAA6D1 6ADF9A1 4D94E1 D3FD1 F41 9A1 SKi +LB - B K88LT12341F961<41EF#E1D3FD1834A1DF9AB1D341A96A1651
D34E41D4E"1D3414E7D19E1D3417FED16A41 286E62D2568878378 A8
+6C41K+L13FE1A61C4E4ACFAD1'D19E14D19A11 951 FAC1 6A7#1 951K+L 1p1D34179A41@@1651D341F7B6 9D3123E"12+6 p ( K+; ;+L1FAC12K+L6 p ( G5282K+L618
8
D4586E68878378B - B 2 0 686258468E7878378A8 8
/4D13 KiL1 41D3414AD1A6C41FAC1S2B - B 2~T1 41D341E4D165194C9FD41C4E4ACFADE1397C4A165131 39A41 A6C4E1 F41 6AE9C44C1 9A1 6ED1 6C4"1 F771 397C4A1 65131F41FD1D341745D1651319A1FF#11!34A1D341 F7B69D31 9E1 6AE9C49AB13"1F7716519DE1397C4A12B - B 2~1 3F41 F74FC#1 44A1 D4FD4C1 FAC1 E4D122)613FE1 44A146C4C15614F312) S2B - B 2~T11232453678923ABBCD32453EF59235E75352373975333A553678923 ABCC383 3 236 22 6 - #2~$1 81 8 8 8 8 8 8 8 8 8 8 8 8 8
Fig. 5. EF0 8712345 algorithm: considering a node of .
For each node 3, the 3 following characteristics are displayed: its label, its rank in the postOrder vector and its current set 236. This figure shows the information available at the point (**) when processing the node f, (dotted circle). At this step the two sets 26 and 2fY6 have already been computed. The other sets are not yet initialized (marked with '?'). fY has been identified as part of CD (represented by a circle around it) and the algorithm is considering whether or not f, belongs to E. Since f, the test line (**) returns true and f, will be included into E;
2341 D4ED1 FD1 D341 69AD1 @@1 651 D341 F7B69D31 9E1 E4C1 D61 C49C41 834D341 61 A6D11 9E1 9A1 D341 76E41 FAC1 E367C1 41FCC4C1D61C261FAC1D61C3
1
• <FE413 C13 9E1 FCC4C1 D61 C261 FE1 84771 FE1 D61 C261 FAC1 49C4AD7#1 C ( K+; ; L1 FAC1 C2KL6 C ( a^V2KL6 E4419B1A1561FA14F741
• <FE4132C1 'A1 D39E1 FE4"1 FEE9AB1 D341 9ACD96A1 3#6D34E9E"1 FD1 D341 69AD1 @@" F771 D341 A6C4E1 6511 22
6 - #2~$1F419A1p1FAC1 236 0 S3T p ( G528236123416A7#1D39AB14F9A 9AB1D616419E1D3FD13189771 419A7C4C19A12i61FAC19A1236195"1FAC16A7#195"19D19E1D34174FED16 6A1FA4ED61651D861A6C4E165111
F
o If #82368 59A236$ then there are at least two nodes B d of , such that 3 7892B d6 and 3 should be added to 2i6 as well as to 236. 1E4419B11561FA14F741 1
%E1 82368 59A236"1 D3441 F41 FD1 74FED1 D861 A6C4E1B d ^_VFD1 SB dT 22 )6B *
+B - B c1'D]UU]^Wa`aW`a861C9ED9AD1397C4A12)B 2 65131E31D3FD1 22)6B d #2 $1 =#1C459A9D96A1651D341DBA"13 7892B d61951FAC16A7#195"13 &2B d61FAC1313FE1A61C4E4ACFAD19A1D341 FA4ED6E1E4D1&26M&2d6123415641FEE4D96A19E16 96E"174D1E1641D3417FDD41 #1E6E9AB1 D3FD1D39E19E1A6D1D341FE416438B917FA3FAC8638136"1D34419E1F1A6C413¡ &26M&2d61FAC1F123B 3¢61 C94D4C1FD319A1D1239E1FD31A44EEF97#1B64E1D36B31F1397C12}165131FAC"1F6C9AB1D61D3419A CD96A1 3#6D34E9E"122
}6 p ( G52822}61 'D1 567768E1 D3FD1 SB dT ! 22}6"1 83931 9E1 96EE9 741
o '51D341D4ED1@@19E1A6D1D4"1D34A119E1A6D19A1D341176E41FAC19E1FCC4C1A49D341D61C1A61D61C E441 9B1$1561FA14F741 1
The main thing to prove is that when 82368 59A236, there are not two nodes B d of 236
such that 3 7892B d6. (see 9B1$ for an example). %E18C268 £W¤C261D34A1D34419E1E641 ¥ S+B - B ¦T1E31D3FD1C26 C2^
§61'A1D39E1FE4"131FAA6D1 41D341DBA1651F16741651A6C4E12B d61 4FE41 D341 A6C412)1 9E1 #1 6AEDD96A1 FA1 FA4ED61 651B d1FAC1F1C4E4ACFAD165131'D1567768E1 D3FD132p1FAC1D34166519E1674D41 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Fig. 6. EF0 8712345 algorithm: considering a node of E. This figure displays information available at the point (**) while processing the node '+ (see Fig. 5 for legend). f+B f, and fY have been identified as part of the EF closure of (encircled) and the algorithm considers whether or not '+ is also part of this EF closure. Here, the current set 2'+6 is the union of the two sets 2f+6 and 2f,6. This union being larger than the two sets used to deduce it, '+ is identified as part of the EF closure of and 2'+6will be updated accordingly.
Fig. 7. EF0 8712345 algorithm: considering a node that is not in E.
The algorithm is considering &+. At the point (**), the set 2&+6 combines the three sets 2f+6, 2¨6 and 26. With the resulting set being equal to 2¨6 and &+ © , &+ will not be added to the EFclosure of .
F77464758A9A9A114FB7D419F7FEF0 8712345FAD57619161F1A6C41E4D119A1F13A51D 2B 6"1D341 EF0 87123451F7B69D31AE19A1128E8886 12888861
F7731; DF9A9AB1D3416ED6C414D61651A6C4E19E1C6A41D36B31F17FEE9F71C4D3159ED1E4F31DF4EF71 651D341BF319A112886123416749D#1651D3414F9A9AB1FD1651D341F7B69D3"1FC41651D861A4ED4C1561 766E"19E16 96E7#1C4D49A4C1 #1D341A 4165144D96AE165179A41@1239E179A416D4E1D341A96A1 651D861E4DE1651FD16ED18E814744ADE1FAC19E144D4C156144#1397C165144#1A6C4"1941128861D94E1'D1 567768E1D3FD1D34164F7716749D#1651D39E1F7B69D319E128E888612
D341EF0 87123451F7B69D314&94E1128E8886 1288"6146#1EF41
F773A1614F31A6C4"1F1E E4D1651E19E1ED64C1'A1D34186ED1FE4"18E8 88174FC9AB1D61F16749D#1651 1288"61
1
+6D41D3FD19A16ED14F71FE4E18E8 F 88196464"1834A1F771D341F4ADE1651F1A6C41313F41 44A1D4FD4C"1 D341E E4D1651E1FDDF34C1D6131 464E1E474EE1%E1F16AE4&4A4"1E64146#1EF41FA1 41544C1 239E1FA1 414FE97#1C6A41 #1F9ADF9A9AB1F16AD415614F31A6C419A9D9F79.4C1D619DE1A 41651F4ADE1 !34A1 D4FD9AB1 F1 A6C4"1 D341 6AD4E1 651 F771 651 9DE1 397C4A1 F41 C44FE4C1 #1 6A4"1 FAC1 834A1 F1 397C1 4F34E1F1.461F7419DE146#19E1544C1239E1C64E1A6D14C41D34186ED1FE416749D#"1E9A41D39E1 6D99.FD96A19E1E474EE1834A1D3413A519E1FC416516A41A6C41D3FD13FE188 0 +1397C4A"1 D19D1E9BA959FAD7#1 4C4E1D34146#1EF41A44C4C19A14F71F79FD96AE1
3.3 Building a relevant excerpt of a dag from a subset of its vertices 1
!34A1 E4F39AB1 561 D341 74FED1 474FAD1 64E4D1"1D341EF0 87123451F7B69D31C4E9 4C1F 6416 9C41FA1455994AD1E67D96A1D619C4AD95#1D341;1E4D1651474FAD1A6C4E19E1ª E1
1
234A"16A41F#1A44C1D614DFD1D34164E6AC9AB144D1651D3413A51239E14C4C13A51FA1 41E44A1FE1 F1C4C9FD4C1B948C1651D3417FB4ED13A51FAC1FA1 41E4C1D61E44C115D341FAF7#E9E161D61F776814AC1 E419AD4FD96A29EF79.FD96A147FD4C1D61D341DFE1239E1B474FAD13A5144DC1ED14E441D341F D9F716C41F6AB14D94E1651ª1D3FD19E19AC4C1 #1D34183674169B9AF713A5144A1D36B31E6419AD44 C9F#1A6C4E13F41A6D1 44A14D19A1ª1964156F77#"1B94A1D3413A51D 2B 61FAC1F1E E4D1ª16516"1 841C459A41D341474FAD1C83A51Dª 2ªB ª6FE01
• ª ª1
• 23B /6 ª9551D34419E1F1C94D4C1FD319A11B69AB156131D61/189D36D16EE9AB1FA#1A6C4E1651ª1 2341E4D1ª16514CB4E1FA1 41455994AD7#16D4C1D3FAE1D61D341D6676B9F716C419AC4C1 #1D3413A51 239E1D941841897716AE9C41F14D41316A7#1F5D413F9AB16AE9C44C1F7716519DE1FE4ACFADE1331FA16 C4"1 D3FD1 841 89771 F771 F1 64F 76346"1 FA1 41 6 DF9A4C1 #1 6AE9C49AB1 D341 6ED1 6C41 4D61 561 DF971 D61 34FC11
Name: relevantDagExcerpt
Input: a dag D 2B 6 a set ª of relevant nodes
Result: Dª 24B 46 the relevant dag excerpt.
ªwª; Dª« 24B 6
for each u in reverse(postOrder(G))
¬¬236«
for each f in parents(u) if 2 © 46 ¬¬236«¬¬236¬¬26 (*) else ¬¬236«¬¬236 if 23 46 for each / in ¬¬236 ª«ª 23B /6 return Dª 1
Algorithm 4. Relevant dag excerpt algorithm
/4D1¬¬2361 41D341E4D16514D4A29F4ABAD4F 2B4C976C1651316ADF9A9AB14D94E1D3FD1F414E4AD19A1ªFAC1 FA1 414F34C156131D36B31F1FD316EE9AB1A616D341A6C4E1651ª1!34A16AE9C49AB14D94E19A164F 76346FD341E4D1¬¬2361651D3414AD1A6C41319E1D341A96A1651D341E4DE1¬¬261651F7719DE1F4AD1A6C4E1D3FD1 F41A6D19A1ª"17E1F7719DE1F4AD1A6C4E1D3FD1F419A1ª12341E4D1ª19E1D34A16AEDD4C1 #1FCC9AB"15614F31 A6C4131651ª"1D3414CB4E123B /61 4D844A131FAC1FA#1A6C41/1651¬¬2361FE1C4DF974C19A1%7B69D3181
2341 6749D#1 651 D39E1 F7B69D31 9E1 E997F1 D61 D3FD1 651 D341EF0 871234511%7B69D3141%E1 561D39E1 7FDD41F7B69D3"1D3414#19AEDD96A"179A41@"16D4E1D341A96A1651D861E4DE1651FD16ED18ª814744ADE1 FAC19E144D4C156144#1F4AD165144#1A6C41651D3419A9D9F713A51D1941128861D94E1
4 B
UILDING RELEVANT SUB-
DAG VIEWS BASED ON CLOSURE:
TWO CASE STUDIES239E1E4D96A1977EDFD4E1D341E457A4EE165161F6F31561D861 9676B9F71F79FD96AE1234159ED16A419E1 47FD4C1 D61 6AD676B#1 FE4C1 FAA6DFD96A1 839741 D341 E46AC1 6A41 9E1 47FD4C1 D61 E494E1 9C4AD959FD96A1 561 4DFB4A691FAF7#E9E1
4.1 Building sub-ontology to apprehend gene annotations
;AD676B94E1 F41 E4EE577#1 E4C1 FE1 E4FAD91 B9C4E1 834A1 AF9BFD9AB1 D36B31 D341 3B41 FAC1 441 9A4FE9AB1&FAD9D#1651C9B9DF71C64ADE1(11234#1F41F1BF31 FE4C144E4ADFD96A1651C6F9A1E4 FAD9E183441A6C4E144E4AD16A4DE1 651D3415947CE1FAC17F 474C14CB4E144E4AD16A4D147FD96A E39E123411CAF47FD96AE3919E14ADF719A16AD676B#15619D19E1D341E67416A41D3FD1F4FE19A156F716AD676B#1 C459A9D96A1 (4D1 9D1 9E1 D341 E6741 D3FD1 9E1 4E4AD1 9A1 F771 6AD676B94ED1 FAC1 9D1 9E1 #1 5F1 D341 6ED1 89C47#1 E4C1 47FD96AE391 E4C1 D61 79A1 6A4DE1 !34A1 4ED9D4C1 D61 1CA1 4CB4E1 D341 6AD676B#1 BF31 9E1 F13A51 D3FD1 9E1 65D4A14544C1D61FE1D341 F 6A41651D3416AD676B#1(4"1(81
1
453955373F79277352E2879383E5356753893 D3!4553F24736789237F232453E232423 93 668E28793 7EF53 793 793 628EF3 65E23 73 2453 !4753 79277"3 #$893 E79E853 93 %5 989F3 F792773 83 73 EFE83 89393 E7%6F2538253 792773 76528793 955893 3 4F%93 5652D3FE4337927735893935$7F2879373$8F3825893!824893E79E562F3%6"3&45937 EF8937933F52373E79E5623A5""32475389589338$5937EF%592373247537$53565592538932453 8953733523737EF%592C33648E35655922879373245831234352879486383$53456F"3453 %723!856537F287938327386324753E79E5623738925523!82434553245839E527"34837F43 7F28793 83 A%9FC3 F53 893 %93 6F8E28793 A5""3 'D3 ( C3 3 !53 3 !824893 &53 53 2773 A4226))!!!"897%28E"*"7)+,64),247-855C"3453EF0 8712345367$8533%753E79E8535E5623
73 2453 12343 6473 3 .556893 793 9E5273 2423 4848423 528793 %793 2453 E79E5623 73 892552"3 /9 5532483792773675%28E3!323245378893737F3!7.3793EF0 8712345393!534$535$5 76653358E2532773E53,92707EF"33
73 8F2253 2453 55$9E5393 E8823 73 2483 667E4D3 ,92707EF3 43 5593 F53 273 528E23 2453 +5953,92773AE792898937F2312D222325%C3273245323E79E56237324533451359537E8253!8243 34523 519E53 FE56288823 EE7893 273 2453 6F76593 387897%28E3 /9282F253 A4226))!!!"58"E"F.)+,1)"C3 453 E75679893 F792773 89553 3 ,92707EF3 893 7F23 7953 %89F253E79289378355$923E79E562"33 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
GO-sub-ontologies constructed by OntoFocus using BRCA1 annotation (white colored concepts). Blue colored concepts were added by OntoFocus to explicit semantic relationships among white ones.
/9308"313795373245324553E7995E253623732453F79277383655925D32423E7567932738955A54BC 8DEFD92"3137953%355D32453$8F892879383$53E7%725393!8248934F%93E79828$5393 65E5628$538%82"34532!737245362D3972347!93455D3E792893393'1325%D3!48E43737!33 E7%7253$8F892879"3 :5$53668E28793%353F95895"3082373D32453F5E592553F792773%353F5F373 8778E3F538935678289399722879"3483484842D3735%65D324235$5399722879353 5895%59237324531B48955A54BCF4BCA+,;22<<<8<"C3453%53667E43%353F532738%F2957F 3E798532453997228793735$53595324234537%538778E3E4E25828E3A5""359534$ 8938%83565879367853893%8E735658%592"C1
4.2 Identifying taxonomic group of environmental DNA sequences
+48139B3D36B3D1E4&4A9AB1D43A9&4E1F77681D616 DF9A197796AE1651E36D16D96AE1651E+%1B4 A64E1 61 DFAE9D641 F774C1 4FCE1 234E41 D43A9&4E1 FA1 41 E4C1 D61 E4&4A41 E+%1 651 F1 E9AB741 E494E1 'A1 D3FD1 FE41 D341 &FAD9D#1 651 6 DF9A4C1 9A56FD96A1 F7768E1 FEE4 79AB1 F76ED1 D341 836741 B4 A641651D39E1E494E1%7D4AFD947#"16A41FA1F7E61366E41D61E4&4A41D341836741E4D1651B4A64E1FF97F 7419A1F1B94A14A96A4AD14B13FA1BDE"164FA1614FD31EF741FAC1E616A1239E19E1FD97F7#1 E4571 D61 EDC#1 D341 467D96A1 651 D341 96C94E9D#1 651 D341 EF74C1 4A96A4AD1 9A1 4E6AE41 D61 E641 3FAB4E14B1977A4EE"179FD413FAB41'A1D39E17FDD41FE41F14#1DFE19E1D61FEE9BA1D341E4&4A4C14FCE1D61 F1 B94A1 E494E1 61 DF6A691 B61 239E1 9E1 B4A4F77#1 C6A41 FE4C1 6A1 F1 3#76B4A4D91 D441 836E41 74F4E144E4AD1D6CF#1E494E1FAC19AD4AF71A6C4E1E49FD96A144ADE1D3FD1C459A41DF6A691B6E1261 FEE9BA1F1DF6A6919C4AD9D#1D61F1B94A14FC"1D341AA68A1E+%1E4&4A419E16F4C1D61D36E41651D341 3#76B4A#1D44174F4E1D3FD1F4016764C19A1 741834A1E997F1D61D3414FC1FAC19A14C16D3489E41'A1D341 4FE94ED1FE41D34419E1F1E9AB741 74174F51FAC1D3414FC189771 41FAA6DFD4C189D31D34164E6AC9AB1E494E1 61F 9B6E14FCE"1D3441F41E44F71 74174F4E1FAC1D3414FC19E1DFC9D96AF77#1FAA6DFD4C1 FE4C16A1 D34911231%144AD1F41C4E9 4C1FA169B9AF71F6F31D3FD14564C1 4DD416A1E97FD4C1FAC14F71 CFDFE4DE1(F123419C4F19E1D619C4AD95#1D3419AD4AF71A6C4121D3FD1 4ED1FAA6DFD4E1F14FC1 FE4C16A1D341A 416519DE1 741C4E4ACFADE1D416E9D94E14C1C4E4ACFADE15F7E416E9D941FE184771FE1D341A 41651 741FAC14C174F4E1D3FD1F41A6D1C4E4ACFAD165121D41FAC15F7E41A4BFD94161C69AB1E6"19D1E5594E1D61 D4EDE183FD1D34#1F7E61F774C1B474FAD1A6C4EC1D3FD1F41D34174FED166A1FA4ED6E1651D86161641 741 74F4E1 239E1 FA1 41 E44A1FE1 F1 FD97F1 FE41 651 61EF0 87123451834A1D3413A519E1F1D441964641 D34#169C41FA1F7B69D31D614ED9D1D341DF6A691D441D61D39E1474FAD1E4D1651A6C4E1839319E1F7E61F1 FD97F1FE4165161641B4A4F713A5144D1F7B69D31;186169C4E1D3464D9F714E7DE1FAC1 FA1F7B69D31D3FD14D4AC1D34914FC1FAA6DFD96A1F6F31D61D341FE4183441D341DF6A6#19E1C49D4C1 #1 F1 3#76B4A4D91 A4D861 9AED4FC1 651 F1 3#76B4A4D91 D441 G3#76B4A4D91 A4D86E1 F41 3A5C1 836E41 74F4E1F7E6144E4AD14DFAD1E494E1D3FD14494C1641FAC1641FDD4AD96A19A1467D96AF#1 9676B#1F1 44AD1 6619E14AD947#1C4C9FD4C1D61D341()1'AC44C"1 #1FD369.9AB1F1A6C41D613F41E44F71F4ADE1 D34#1 F77681 D61 44E4AD1 3#76B4A4D91 A4DF9AD#1 9D1 9E1 A6D1 74F1 83931 F4AD1 9E1 D341 4F71 6A41 FAC1 6741 9676B9F7144ADE1E31FE1E494E13# 9C9.FD96A1617FD4F71B4A41DFAE54E11
5
C
ONCLUDING REMARKS239E1F419AD6C4C1D3416A4D1651EF0 87123451651F1E4D116514D94E19A1F13A51FAC1FA16D99.4C1 F7B69D31 D61 9C4AD95#1 9D1 239E1 F7B69D31 3FE1 D341 4ED1 A68A1 D941 6749D#1 1128E88861839741E9AB1 6A7#1288"6146#1EF41239E176816749D#164E1561D3416A49D#164D94E1651D34176E41 651EF0 1c549d141D3FD1F7768E1D616 DF9A1F1B44C#1F7B69D31
9FA#1F79FD96AE1F#1 4A459D1561E31FA1F7B69D312861651D34"1C44764C19A1D39E1F4"16A 4A1 D341 79541 E94A4E1 C6F9A1 ;A41 9E1 47FD4C1 D61 D341 89C4E4FC1 54A41 ;AD676B#1 839741 D341 6D341 9E1 47FD4C1D614A96A4ADF714DFB4A691FAF7#E9E11
D41C94D96AE1651618619A7C415D341EDC#1651D34147FD96AE391 4D844A1D34176E416A4D1 FAC16A49D#1FAC147FD4C1F7B69D3HE16D99.FD96A11
A
CKNOWLEDGMENTS239E1 79FD96A19E1D3414E7D1651F1677F 6FD96A1 4D844A1D341B'AED9DD1C4E1394A4E1C417I?67D96A1C41 96AD47794C1 79>1 AAA81 1 <+>31 FAC1 D341 B/5'1G1 >4E4F31 <4AD41 561 ?6741 C4E1 99A4E1 CH%7JEC1 239E1 861 8FE1 E6D4C1 #1 D341 4A31 %B4A41 +FD96AF741 C41 7F1 >434341 K!7A124CF "465429CI1 %+>*F?9?>*((1 KD 61A24I1 239E1 79FD96A1 9E1 6AD9 D96A1 +61 1*((LLL1 651 D341 'AED9DD1 C4E1 394A4E1C417H?67D96A1C4196AD47794179>1AAA811<+>3"1FA41
R
EFERENCES[1] P. H. Edelman and R. E. Jamison, "The theory of convex geometries," in Geometriae Dedicata, vol. 19,
Ma-thematics and Statistics: Springer Netherlands, 1985, pp. 247-270.
[2] M. A. Bender, G. Pemmasani, S. Skiena, and P. Sumazin, "Finding least common ancestors in directed acyc-lic graphs," Proceedings of the Twelfth Annual Acm-Siam Symposium on Discrete Algorithms, pp. 845-854, 2001.
[3] R. Yuster, "All-pairs disjoint paths from a common ancestor in O (n(omega)) time," Theoretical Computer
Science, vol. 396, pp. 145-150, 2008.
[4] A. Czumaj, M. Kowaluk, and A. Lingas, "Faster algorithms for finding lowest common ancestors in directed acyclic graphs," Theory of Computer Science vol. 380, pp. 37-46, 2007.
[5] S. Eckhardt, A. M. Mühling, and J. Nowak, "Fast lowest common ancestor computations in dags," in
Proceed-ings of the 15th annual European conference on Algorithms. Eilat, Israel: Springer-Verlag, 2007.
[6] J. A. Bondy and U. S. R. Murty, Graph Theory with Appplications. New York: American Elsevier Co., 1976. [7] G. Cardona, M. Llabrés, F. Rossello, and G. Valiente, "Metrics for Phylogenetic Networks I: Generalizations of
the Robinson-Foulds Metric," IEEE/ACM Trans. Comput. Biol. Bioinformatics, vol. 6, pp. 46-61, 2009. [8] H. Aitkaci, R. Boyer, P. Lincoln, and R. Nasr, "Efficient Implementation of Lattice Operations," Acm
Transac-tions on Programming Languages and Systems, vol. 11, pp. 115-146, 1989.
[9] S. Janaqi and C. Payan, "Une Caractérisation des Produits d'Arbres et des Grilles," Discrete Mathematics, vol. 163, pp. 201-208, 1997.
[10] H. M. Mulder and L. Nebesky, "Axiomatic characterization of the interval function of a graph," European
Jour-nal of Combinatorics, vol. 30, pp. 1172-1185, 2009.
[11] Thomas H. Cormen, Charles E. Leiserson, and Ronald L. Rivest, "Graph Algorithms," in Introduction to
Algo-rithms, 6 ed. Cambridge: The MIT Press, 1992.
[12] A. Abecker and L. van Elst, "Ontologies for Knowledge Management," in Handbook on Ontologies second
edition, International handbooks on information systems, S. S. a. R. S. (Eds.), Ed. Heidelberg: Springer, 2009,
pp. 713-734.
[13] N. Guarino, D. Oberle, and S. Staab, "What is an Ontology?," in Handbook on ontologies, International
hand-books on information systems, S. a. S. Staab, Rudi, Ed. Heidelberg: Springer, 2009, pp. 1-17.
[14] C. Ben Necib and J. C. Freytag, "Ontology based query processing in database management systems," On
the Move to Meaningful Internet Systems 2003: Coopis, Doa, and Odbase, vol. 2888, pp. 839-857, 2003.
[15] M. Bhatt, A. Flahive, C. Wouters, W. Rahayu, D. Taniar, and T. Dillon, "A distributed approach to sub-ontology extraction," 18th International Conference on Advanced Information Networking and Applications, Vol 1 (Long
Papers), Proceedings, pp. 636-641, 2004.
[16] M. E. Dolan and J. A. Blake, "Using ontology visualization to understand annotations and reason about them," presented at KR-MED 2006 "Biomedical Ontology in Action", Baltimore, Maryland, USA, 2006.
[17] M. E. Dolan and J. A. Blake, "Using Ontology Visualization to Coordinate Cross-species Functional Annotation for Human Disease Genes," in Computer-Based Medical Systems, IEEE Symposium on, vol. 0. Los Alamitos, CA, USA: IEEE Computer Society, 2006, pp. 583-587.
[18] J. C. Clemente, J. Jansson, and G. Valiente, "Flexible taxonomic assignment of ambiguous sequencing reads," BMC Bioinformatics, vol. 12, pp. 8, 2011.
[19] D. H. Huson, R. Rupp, and C. Scornavacca, Phylogenetic Networks: Concepts, Algorithms and Applications: Cambridge University Press, 2011.