Holistic Twig Joins: Optimal XML Pattern Matching Nicolas Bruno

Columbia University

Nick Koudas

AT&T Labs–Research

Divesh Srivastava

AT&T Labs–Research

[email protected] [email protected] [email protected]

ABSTRACT

    !"   $#%'&(#& ' )  # +* ,-. /,-)0$1 23,&4 02, - '&5 -34 &61 ) -)  1, 7,&8  69 1:2 ;=<>-)&?-)&@6' ) %   &2A '0B2CD"FEG-@! 23,&-)&&DAD 3'9  -H" 

 %,3- '&I0J '!AK* ,  -)&@ ;DLM- '6E: 'NDC23 F  -' ) K ! % KC+FE.-@ 23,&I-)& D9 -)&'O2' P '&C-) Q'&R&2 'F ,& &ST  - '&C-) %#+&2 FE.-@"" C-)&2@"-H C -U +92V P -WS8-)&2@6' 2XY '-)& @  -C"! 6" CZC 9-)&2[  - '&C-\ " @3'-)&"C   923 #'& P -)-WS]-C -)&@K @3C2+C923-7 C2; ^_ )- - - &I 0=C -1  3`CD0$ A7 C -)&@+FEG-@"  ,&A- C A-)&"- ] 1-a &Z@3b @  #BU ,&TE.C2&ZC -)& 21&25 ' A-aA'17 '1"&23@ 9  ; cd&DC -A ' %#>E.1  ' % 3]"& U , =C2  )--+FEG-@1X -)&Z @  -C+#ef%ghi jkl'm3#0$ 'B" C -)&@1'&7A6* ,1E.-@H 23,&>; nb5C &-* 26Z`C'-)&o '01 )-)&NK3`N6 Z      &p '- b ! +  F '$ 0* 2,  C#ME.C -C  C,&T ! % D 6 '9'-)&q7 C2H0$ 'rC27E.-@" 23,&>; sqC2&ZC FE.-@]  ,&1 '& '& F ,&2'&!, ' - &2C-) A9%E:,&5, "&# ef%ghi jkl'mH-ct3nu&2wv.L4xK   -7' H3" '&@' ) H* 2,&- ' @ -C27"C23p ZC",&-) -)& 2VM->-> )-)&'=-)&"C.y 02-a4 02CM-)& 2M )-='& C z&' % G )-#9 4-)&  %,& ,&1 0{C2-aH '0%-)&,"?-3  ;Os5C2&KC 'EQC E| [ P D" -)z2 - '&} '0S1~4 #%'  &2@E.-CTef%ghi jkl'm #% 6"3`CT* 2E.-@" 23,&2 -)&79 $ )-)&'H-7 ;=<>-)&2 )  #E.4   ",&= '='&' -:EG-C  %,-",& . 1 '&T"'&@ " 04 ='& &C-6  # &2* ,5E.-@  ,&;

1.

INTRODUCTION €  Dq,F2 _" , !0$ '5, ,&-)&2@  ;7b2,-A-)&ZI* ,+ '&@' @3 P  #>3; @;\#{‚ ƒ#{„?#B…‡†JS F -' ) + /,-)0$"  ,&. '0{, - '&5 -3H '&5p -)    ",&!C23AC2U3" "7 %,-)zq", 3- '& C-) ;H<2 'H    #%C b,6 - '&{V ˆ3‰‰Š%‹ŒŽŒ3"‘“’$”'•–{—d˜3™'™š›Œœ3‰ ‹dž Ÿ ‘“’¡šŸ3%—G¢£¤DŸD‘“’$¥ ‰%—d˜

Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. ACM SIGMOD ’2002 June 4-6, Madison, Wisconsin, USA Copyright 2002 ACM 1-58113-497-5/02/06 ... 5.00.

¦

"3`C7k'§j ¨© ª+, 7,& C  P -WSpCU 6`C-) q 9/, ",& « ¬ E.-CZ &,&!­k ¬® # P -)-WSbCU "6C -) T 9% ",&7¯ ¬ E.-C  &,&.°© ® #&2 P -)-)-WS.' ,&2'& '0%±©©'m!, 7,&HC23 C'U3+C -) qj%gj¯ ®  9% ",&6E.-CO '&,&!²³´ ;%µ.C -7  - '&w'&69%., ,&5 =p& ,$ '9%, E.-@ P 'H7' ) S>  ,&6E.-C6 ",&.&27-)&2@!U' ). M&  . '9/, ; <>-)&?-)&@I )  ,,&26 '01DE.-@ 23,&I-)&o 923 -6 ' ' /, - &K-)&KA_* ,Z  -)&2@#b9% 3CI-)&O,  - &2 H- ",& - &26 0HAO 3'9 #='&-)&Z& -U3 AO 3'9 ;7L8- "E: 'N P  #%0$ 13 3#.‚\¶‡…?#B…'·#4¶‡¸?# ¶¹# ¶ƒ #3…3¸?#¶,†JSC { -' ) 7   % 3"C4FE.-@G  &1-)& ": '0M9-)&2 P ',&FC -) D'&'& &2'&Sb,  - '&C-) 2A9%E.&] '-)H 0>&  # ; @ ;# Cb '&C-) [,  - '&C-) 2 P ±©©'m%# j%gj¯ ® S>&2 P k'§j ¨© ª2# « ¬ S,#3'&+CA'&  ,& &[  - '&C-\ P ±©©'m%#k'§j ¨© ªS,;ºµGCD* 2,_E.-@  ,&O&KC,&q9%+"3`CZ9 P -WS 7 C -)&@Z3`Co '0C2 9-)&2Z2  b  - '&C-) 25 @ -)&27C26AO 3'9  # '& P -)-WS]»F-`C-)&@ ¼+ 3@ C,rC2A9 -!"3`C; <2 M  U -)&2@1C8zM9 $  '9 ½ '0"3`C-)&2@A9-)&'1, ' H,  - &2C- 2#!¾ C'&@Z" $;A‚ … ¸†b  ' / KDU'- - &

'0=C1 -- '&' :",@3.X '-)&D @ -C2+#{C1p -)$ -3 ",@3]XY '-)& P L=D¿1À Á1S"' @3 '-C+#1923K '&_CRÂél Ä°=Å ´ ® « jÆ©ÇRÈÊÉ%gh ¨jÆ©ÇMÅ ´ ® Ë® ¯ Ì §Í{Î", ,& - &º '0! % -) - '&+ 01R, "&]&2K-)&@ZU' ) P DÏ?- '&}…; Ð 0$ A-) 1'9% 21C-b, ,&3- '&/S,;Aµ.C,-)A 1C E. C +CDL4D¿1À ÁÑ @ -C2Ê  _ ' %,0$ Ò&2' ÓHÔA~.DÏ+X -)&q' @3 '-C""97 '6C2&q'&Õ ',6 '0G" @& -)   ;o '+&  #H^b )FÖAC' )-)0$O"' $;‚\¶†  'NO U'& @3

'0=C1 7A, ,& - &D '0M % 3-- '&1 '0=AD, 7,&A U -5ct nQ&2ÕvGL=x½ ' -"' BX '-)&q @ -C2"!0$ '!"3`C-)&@ 9-)&22' {,  - &2C-) %! @3'-)&A'&wAZ 923 ; µ.C '&K9 $  '9 × '0!-C-)&2@q @3C,C+923- "3`C+ 92-)&2u-)&2@Z9-)&2|»' ¼XY '-)&]* -) -,&-)0$ -)&@Rq@  IX -)&R  -)&2@I-)&}I 3$923R"& &,# 'N-)&@K, -U --q'&u-)&,7?-3Ø D-aZ-"3 -)& Z3 '&;OcJ&OC- ' %,#:E.+C E|C23"+9 -+ )- - - '&T '0:C- P  -- '&' WS   3`CD0$ 'r" C-)&2@* ,E.-@  ,&.-bC .-)&,7?-3p H-a'&5@3HU , @  # U3,&OEGC,&OC]-)& "'&Øz&' H "-a"+12CO" ' "&23@ 9  ;T^A1+ #=E.6,NT+9%,7 ' )- '&o C2  '9 Ù 0=" C-)&2@5* 2,6FEG-@"  ,&H,Ú6,-&  ; cd&IC-" 2 %,#HE."  ' % 3[& U , pÛ2Ü ÝÞ\ßàÞWá]à$âMÞ)ã"äÜÞdåZ'    CD0$ '"3`C-)&2@Z* ,E.-@" 23,&#>E.C,,-)&D&2 '@3]-)&,7?-3] "] %;wnb !C& -* +2 C"Âél Ä°=Å"´ ® « jÆ©Ç}ÈæÉ%gh ¨jÆ©Ç>Å7´ ® Ë® ¯ Ì §Í{Î , ,&' - '&O 0b / -- '&6 '0AK ",&"&2q-)&@U )2 P C23 ,-)& I 26  H,  - &2C-) 2+9/E.,&q&2  -)&7C2=A6 '9 ‡S,;.c$>  bMH`C'-)&7 '0 )-)& Nç6 N>

    !, ,&4 '-'  : A-)&2-U -? M* ,1    $ '0H  C#4E.C-`CO]C,&q  % 3q  '9'-)&O"3`C  7C21* ,+FE.-@ 23,&{; Ï -)&2b1@ ='  '0% 3A-4 %7 A9%. ' -)&   - '&' r 3'9 5" P  ) AC6"X '7ÔA~.DÏZU3,&2 ' -)&, )?-)&/@Znb3,  #=c$~.è'&Z+-, 3 '0$1  U --)&2@T   % '"0$ "y çS,#. '6 D  U -+U -,&C  ÓHÔ~.DÏ["b& "2@3",&C2,-)r -7 '0=* ,]  ' -)&2@D @'-" +-)&, ) +C ' )--FE.-@"X '-)& 0$ !,Ú6,-,& y* ,Z  -)&@ ;}nb  2Z-]* 2 ) Ø, U& 0J ' & -U3+I* ,&2@-)&2#=-)&]C ' )--FE.-@ X -)&2!'6'& Ú6,-,&=F F'F-": @3A0$ '="3`C-)&@1A+* ,A   &2#M-)&O '&3" C]&  ,F3F-"+  3`Co '0H2-)&@ 1'U3,' ; s 49%Outline D @-)&"9A and ,&-)Contributions &@p9 N@'  &6" ,- P  " , $# * ,6E.-@1 23,&#2'&] / -- '&' M & - '&1 '0{  ",&S.-)&TÏ?- '&T…?;:nb"'-)&D &-)9 - '&!' V é s=U ,   "FE. .0$ !-) )-4 0Û2Ü ÝÞ\ßàÞWá/êëàÛ4äÜÞWåA' @3 '-C" -)&6Ï- &5ÐA A7 C"+* ,p  3F '$ '0%  C40d z2-,&  ;"µ.C z#>Æk j ¨i jkl'm#%@3,&,' )-a"C2 Ï?3`N µ>,FÔA49 -)&'!  X -)&6' @3 '-CQ '0B‚\¶†#3E.C -)  C25 &2%#AÆk j ¨³Æ³2ì#.@ &2, )-aCL4D¿1À Áí9 -) &2X -)&_' @3 '-Cæ 0+‚ … ¸†;½sDD'&' aZÆk j ¨i jkl'm '&C EQC A-1-"cFt n½'&qv.L4xº ' -"' H3" '&@' ) * ,&-' H @ -C2"7C23p3C6,&-)"-)& #4&2 C23HE. 'F31    --A )-)&1-)&C12| 0M-)& 2 '&+ 2 2-a7î'ïàMÞdå2ðñêñå2ðñå2à%Üò1àÛ2ñpßÞ)óñ‡ßÜò1Þdåàñôõ ö ñðÞdëà$ñ1ôñßï?Ýàdß; é sDC,&_ U ,   ½ef%ghi jkl'm-)&½Ï- &R·#AOÛ2Ü ÝÞ\ßà$Þdá à$âMÞ)ã1äÜÞdåZ' @3 '-CèC23 P -WSA,z&2 Æk j ¨i jkl'm6 &   C ! 5 ! I0$ 6 '&+  F '$ 0  C

'0HDE.-@+  ,&O  )-)Nç, I +CU 6"3`C-)&2@D  -)& 3C2, 23C2H 0=C21FEG-@! 23,&>#%&2 P -)-WSb"@ H,  !0$ '7C26-)÷%,,&"  3 $ '0 23C2 -)&OC6* 2, E.-@+  ,&{#.  3 2C6 -)I ' 2;TsØC,& C2H* ,"FEG-@14 & 6&2 'F ,& &b, 3- '& C -) "9%FE.,&O, 7,&#.E.6&2 -'  K " '&  C236ef%ghi jkl'm+-cFt nÑ'&_v.L4xí ' -" ! " &2@q' ) * ,&-' = @ '-C"1C .3C21,&-)1-)& ; é <>-)&2 )  #.-)&oÏ?- '&u„+E." &" %,-7,&'  

'&w &2@3

0M' B'& &C2-" 3 #%&2* ,+FE.-@ 23,&#2 " 3  ",& '1'&' -' = V C2!92&-' = %,0$ "'& 9%&2,zA 0 ø sD-) &2@KC C2ER

 )--KE.-@ZX -)&2D U ,D9 -)&'}2' X -)&2 P 0$ 'H9 -"X '-)&w ',S,; 4C EC { " &2@HC2  )--G  CHXY '-)&7' @ -C27# ø sD Æk j ¨i jkl'm"-"-@& -)z& dq0$ ,7C'&OÆk j ¨³Æ³2ì; µ.C -1U )- 3 C"&2 -' . 1" &23 -)&@]C!ct3nR'&v.L4x} ' -"' )-F '0=Æk j ¨i jkl'm; >C8 ø <2 '0G >ef%Cg=hi  jk.l' m 0-1E.9%-@. 23, ,P 9/& #CZE.-)=&qC- '7ET]C2&23T  23S C'&qC"-)&2, %,&,&]6 '0Æk j ¨i jkl'm6 '&O3`C   F  '02  C{# U ,&7E.C2,&!C.FEG-@.  ,&7 &  '-)&b '&C-) ' M, 3- '&C -) ; ø sDC2 E|C2 Eí 2T" ?-)z3- '&½ 0!~4F# ,&2 3A~=#'  '&@+E.-Cwef%ghi jkl'm# %, 0$ K" C -)&@A 02* ,E.-@. 23,&2>-)&6ßïî‡õFÝÞdå2ñëô à$Þ ö ñ‡; sD6 -)9%], 3qE. 'ND-)&oÏ?- '&Où #B'&Ø '&, )2+9 -,-)&2@ &2@3 '-)&@+&2+0d1E. 'N6-)&TÏ- '&T¸;

2.

BACKGROUND

2.1

H^ &ZData ØModel 923"-and 1]0$ Query 1 '0= Twig

%#{ 'Patterns ,%#> '9%  #H CK&2  ' % &2-)&@K Ø&K, ",& '5ZU )2 # '&qC25@   &-)&2@ P -)S!, ",&F9%, 7,&+  , 7,&FU' )26,  - &2C-) ;6ÁA  '9% " '&-1 '0G]A '0 P  -)9 #.U' )S '-)#.E.C-`Co Ú " " ,  @3#HÄÃ# ÄÃÉúû#3 ;=µ.C2 ',-)&2@7 '0M-)9 )-)&@]&  .-  )-,- W z & " 3' { ', '&wC2A&  b-)&7 # '9'-)&9]1  ', U , . 0HC" &  ;6<>-@'[¶6C EH1C2" , , ,&3- '&O '0H3  +AO 2"&; P µ.C2 -) )-q 0HC2 &p9%b3 ,- EG-C5C1b& HEG-) ) %9%1 -)&2+-)& Ï- '&T…; Ð;)S

1.1

book

title

(1,2:4,2)

allauthors

(1,5:60,2)

(1,1:150,1)

year (1,64:93,2)

(1,6:20,3) (1,3,3)

XML author

chapter

(1,61:63,2)

(1,62,3)

author

author

title

2000

section

(1,65:67,3)

(1,68:78,3)

(1,7:9,4)

fn

ln

fn

ln

fn

(1,69:71,4)

ln

XML

head

(1,66,4)

jane poe john doe

jane

doe

Origins

übýdþ%ÿ     "! !(1,70,5) ý#$ (1,8,5) (1,11,5)

(1,26,5)

(1,43,5)

(1,46,5)

b,-M-)&6A5* 2p &2@23@ 4 )-)NçHAb,"‚ …‡†F#b-) H‚)„† ' &DA(YAK‚ ƒ'†="N " '0 P &   9%, S FEG-@"  ,& 0$ =" C -)&@A, U&8 % - '&. '0/ 3b-)&6C.A5 3'9  ; µ.C2=E.-@.  ,&1&  = '9%, M-)&, )2H, "&M @ #3-)9 , U' )  '- &2#1&2O-)&2@qU' )#'&IC* 2IE.-@  ,&T@ !'!,-C, '&C-) Ø @3 P   -Õ-)&@ +-)&@' 6 )-)&2‡S

'!&2 'F ,& &"@  P   -Õ-)&@ " '9 ! )-)&2S,;:<2 '3   #%C21b,6 - '&{V 3ˆ ‰'‰Š%‹$ŒŽ,Œ3"‘“’$”•–>—H¢£'¤%3š3+‘“’'&()(*({—d˜ E.C-`CT" Cb±©©'m7, "&1C23 P -WS4C2U3 6C -) Dj%gj¯ ® 9%, "&E.-C} '&,&²³´ #:'& P -)-WS+C'U3ZIC-) ,  +®kª 9%, "&EG-C_ '&,&.  -/// #.'&I9/+, ,&_ 6C2 E.-@  &K-)&_<>-@'Z… P S,;½nb& Ø '&C-) y@ +' -)&OC -!3 ;Ï - -)   #HC27Ab,D - '&O-)&qC2 -)& 2- &q&9%p & HC FEG-@"  ,&5-)&Z<>-@ Z… P 9%S,;_ÁA 3C23+&K'& F ,&2'&D@ -"2 9%FE.,&wC2A±©©'m , ",&'&+C!k'§j ¨© ª  ",&; cd&"@3,&2' $# M3`C!&  .-)&6C.* , FE.-@b  ,&{#C,.- 5å2Üðñ4ê{ôñðÞdá,ëà$ñ. &C1 -)92 P  ; @ ;# @#  '&,&S. '0BC2 &  6-)&K* - '&{;q<2 ' C2"   % 36 '0C-  ' /,#.3  book title

book year 2000

XML (a)

title XML (b)

author fn

ln

üHýdþ%ÿ0"216ÿ345!76 ýJþ3 jane !!)3 doe

E.C 1- %,!-Ø-)&OC- ?-3+- & ""3,-' $;ÕÏç-!-)   #=C2! C- ., ,&3- '&K 0.C &  p-)&qC"  923 -b& ., U'&1 "CA A-)&DC-b ' /,;c.0d z10$ ! '1  %  C !C2 9%",Ú ,-,&!  "`C' &-" P `C634-)& 6S4 A-,&-)0$6C2H&2 4-)&5C Z '9 1C H3-0$+&]@-U ,&5&2 1 -39  8#2&2  &D" | '0=7 C2; :$< ; 2.2

b¿ -U3,Twig &51* 2,Pattern 7E.-@p  Matching &.=y'&6'&6 3'9 ?>w#ç  ë $ à  á   Û 

@ 0 u = ) A & >  4     ,   &   -)z+9"1" -)&2@!0d ½&2 4-)&A= ö  !&2 .-)B & >+#2CC V P -WS.* ,"&2 p - A'  -z96C21  % &2-)&2@ 923 &   P C2A-7 @ b&  ,rC2!"'  -)&2@çS,#M'& P -)-WSAC!2' P '&C-) Ø&2 &2 'F,& &SG, 3- '&C -) /b9%FE.,&5* ,"&2 . 3-z2[95C2! ' % '&?-)&@ '9 !&2 ;Hµ.C26ëåßâMñô  !* ,  =yE.-D C C]&2 A'&69%A, ,&3.'D & C ", 3- '&wEGC, C6  FP EHGIJJJIKEL S8 &2-: '0MCH 3'9  & AC .-,&-)0$"--)&21" C M0 =}-) & >+; <>-)&?-)&@D' ) H"3`C! '0+* ,DE.-@+  ,&Z-)&O&Z  923A-.1 A ' /, - &+-)&* 2  -)&2@#29% C -)&6, 3- '&' M-  "& - '&A 0M 3'9 #'& -)&6&' -U3A_ 3'9 ;ocJ&OC-" 2 %,#HE.6 &2-,C+FE.-@  &D" C -)&@"  9 +V ¿b-U3,&D"* ,+FEG-@! 23, & = #'&'&Z '9  >RC >C M-)&2"4 H- &-)0$" '9 .&   C  -0$5 CD 'M0 =9N b&  1 ?- #{ !  C &2E.1O

=€ 'D & >+; v. '&-,# 0$ D !  #7C2T* 2,_E.-@I  ,&}-)&½<>-@' T… P S,#H&2KCD 3'9 D[-)&_<>-@ q¶ ;}µ.C -5* 2, FE.-@   &C231 '& "3`C-)&DC! 3] C "' AC & A-)&DC2!* ,+ 6Cp  3A '0=C! 3]&2+-AzA&2 C-)92;

2.3

Representing Positions of Elements and String Values in an XML Database

µ.C N 5'&qÚ6,-,&#>&-)0$ ' "C2& - 0$ '!F3 -7 P XY '-)&9 2S1" C-)&2@ 0H* 2FEG-@6 23,&p-16 % ' -- &2 M, ,& - &Z 0M  ,& '0=, ",&A&2 -)&@IU )2+-)&}CA½ 3'9  P  #A3; @;\#H‚ ù #r¸?#r… ¸‡†JS,# E.C-`CO&26C26, 3-+-)&U ,q-)&2q  6-)& -)&0$ " - &-U' H‚)…3…‡†F; sD.& , ,&=C4 % -- &5 '0%-)&2@1  ,&.-)&6C q 3'9 "31]ÐF  qÂél Ä°=Å"´ ® « jÆ©ÇMÅ!´ ® Ë® ¯ Ì §Í{Î # &25'&'  3@ ' W #>CA % 3-- '&T '0M&, ",&A , &213H ÐF  ZÂél Ä°=Å7´ ® « jÆ©ÇRÈ×É%gh ¨jÆ©ÇMÅ"´ ® Ë® ¯ Ì §Í{Î'#E.C, P -WS.él Ä°A-HCb-,&-)z21 '0BC21 ,",&P P -)-WSb´ ® « jÆ©ÇA&2 É%gh ¨jÆ©ÇH'&69%@ ,&,3]9" '&-)&2@6E.  &19%,40d 3 C+9%@-)& &-)&@K '0!C ,",&él Ä°&-) 1C'+&2 C6,&Ø 0C26, 7,&#4 /-U  HPH'& P -)-)-WS6´ ® Ë® ¯ Ì §Í6- C&2-)&@I, C_ '0!C, "& P '5-)&2@qU' )S]-)&_C  ,",&;_<>-@'q¶C2 EH"Ð  +3 ,- _E.-CK 3"  & #>9 q '&ÕC -1, ,& - & P C"él Ä°]0J '!' ) & b-`C ,&D !9%1 '&S,; Ï2  b  - '&C-) %+9%FE.,&O6&2 6E.C2 3] % 3-) - &21A  -)&DC-b0$3C - &Z&9%!  -)&23-) 2V P -WS5ëå2á,ñßà$Üô`õYðñ‡ßáñå2ð ëåàdV!]&  BCHQ5EGC 6 % -- &K-)& C"Ø 923"-1,&2  D  P > Q ISR Q $V T Q IU Q S.-1], ,&2'& 0"T[& 5  C G E.C  % -- &R-+,& _  P > G ISR G VVT G ISU G S -)÷> G.W > Q IXR GBY R Q #.&2ZT Q Y T G G P GK[\)]_^a`Sbc3d'ef]'gahi*d efk`;l b)^aq`gadrefk`;dfb)s `b)drefk` SŽ m'œ)Œ n3)‰ o_p –3,ž3*Œ n3)‰ o b*^aq` j p

t

P -)-WSGêëôFñ'åàJõYáÛ2Þ\Ýð'V%!A&  2C Q E.C2 3b % 3-- '&D-)&DC2A   '9 !-b&2 D  P >9Q IXR Q!VT;Q IXU QS4-"`C-) D '0=" &  .C G EGC " % 3-- '&O- ,& Z3 P > G ISR G VT G ISU G Sb-)÷ > GVW > Q ISR G Y R Q I T Q Y T G #2'& U G@u ¶ W U Q ;<2 13    #2-)&Z<>-@ 6¶ #%C1'C 'A& "E.-C % -- & P ¶ I ù6V)… v I ÐçS -=A,& &. '0/C249/  'N!&2 HEG-C7 % -- & P ¶ I ¶1V ¶‡*„ v I ¶‡S,# '&+CA-)&@Z»Y­k ¬® ¼AE.-C+ % 3-- '& P ¶ I ƒ I „3S8-H C-) + '0BC2 k'§j ¨© ª1&2 1E.-C % -- & P ¶ I ¸ V¹ I ·S,; ^ÑNI % '-)&DE. 'CK& -)&@K'9/ 'C-+, ,& - &½ '0 &   % -- &2+-)&_CA_ q+-6C236`CN-)&2@O'& '& F ,&2'&Z, 3- '&C -) º-3-  I C`N-)&@  2,&F`C-) u  - '&C-) P E.6&KC2`NZ0J '6&K'&  ,& &.  2, 3- '&C - DE.-C2 2MN&2 E. @ 1 0%C2 -)&,"?-3]&  1 &qCp  C/S,;"^H  #{C -1, ,& - &

'0{ % -- &2! '0{&2 ' )  Ey0$ H`CN-)&2@6  , P  ; @ ;# &2 OC Q 0$  )  'EH1&2 w  C G SA&2D2  4   - - P  ; @ ;#2&2 .  CxQ!- ",&'&1E.-C -)&DÐ! U , 1 r0 C G S4,  - &2C-) 2; 3. 3.1

HOLISTIC PATH JOIN ALGORITHMS

P E.-C" ME.-C 'M 9,-) S8,& .FEG-@H 23,&# 3 { 38 Notation E., ) {3 P -)&`C'&@ 9 SACb  .&  1 0MC1E.-@  ,&{; cJ&T '!' @3 '-C"#=E.""N " 0HC2!0$ ' )  E.-)&2@DE.-@6&2 

' /, - &2V5gÇ´ ® k « V UyzE{2|~} yyz€ #=gÇ É©© j V UyE{2|} yy€ # ‚ k ª ®'¬ jV UyE{A|ƒUyzE{ #=l'¨{g¯ °ª ®'¬ V UyE{A|ƒ„zUyE{z… #M&2 Ç'§±jª ®® Ì© ° ® ÇV UyE{|ƒ„zUyE{z… ;OLM Co* 2-]CU  '& 

'&+C-) Ø %,!&   #: C,E.-l'¨{g¯ °ª ®'¬ P 83Sp &"C]

'0B`C-) ,&&2 H '0@8;Mµ.C2H H 0=Ç'§±jª ®® Ì©'° ® Ç P 83S8-HC2 &  2  8 &2 ) >- ,&2'&; ^ ,- 5E.-C6 C"&  † 8b-)&51* , FE.-@A 23,&5C2, -."ßà$ôñë ö :$< ;Mµ.C2H3Q &'-)&HC2. % 3-- '&' > &   - &2: '0%CH 3'9 b& 4C ="3`C6C4&  H ?-3  1C6E.-@]  &Z&2 w8 P % 3-)9 T '9'-)&Z2-)&@&q,0d z,-,&1 A7`C'&-+#MCD A&-)&2 S,;µ.C2 &  1-)&TC2" í'" [9C,-)TÂél Ä°=Å"´ ® « jÆ©Ç2Î U' );ѵ.CZ ' /, - &2Z U3,3"'3V ® © « #rk ° Ë k ¬ l ® # ¬® ‡ j # ¬® ‡ j´ç#&2 ¬® ‡ jÉ;Mµ.C2H  HE: 1 ' %,3- '&b&5C2 ´ ® « jÆ©Ç &2DÉ%gh ¨jÆ©Ç   ?-)& !-)&ZC % 3-- '&' H, , ,&3- '&T '0MCA&A, ",&b-)&DC13+#  /-U   ; cd&6 '.3`N$9 7' @ -C27#2Æk j ¨i jkl'mH&2"ef%ghi jkl'mç# E.!'  5  ,-3]E.-CT CD* ,+&2 ˆ  86ßà$ëSá ‰2Š < ; ‹= C  "&2 1-)&ZC1 N &2-1 0.! 2-)V P % -- &2 ., , ,&3- '&7 '0G& 80d 3  :x<'# % '-)&= b.&  M-)Œ & Š k ª ®'¬ j   C7-)&+CHA  '9 3# &2 P -)-WS4CA4 0>3`N= &'-)&6áÜ ö ê2ëáà%ñå2áÜ'ð õ Þdåã+ 04 '- .&2D  ='&E.,1 6C"* 2E.-@]  ,&{# E.C -C6&", ,&M-)&" )-)&'H  bH % &-' ) 6 % &2,&- P -)&OC2"&p9/,6 '0* ,&  Sp&219%,  '0H&2E." C2 * ,+FEG-@! 23,&># H-) ) )23[9/,  Ep; ‘r’$“$”–•—˜_Ð ;¶ † ; ™=Þ)ãï ôFˆ ñ šZÞ\ÝWÝï?ßà$ôëà$ñß1àÛ2ñ"ßà$ëSá ‰ñ'åá,ÜðÞdåã6Üò ëå ßâMñô`ßràÜ5ëAê2ëà Û ›ï ñSô .òÜô1ë6ßë ö ê%Ýñ ðëà$ë ßñFà œw2Û2ñ"ëå ßâMñô ‚ ž Q IS} Q ISŸ G †:Þ\ßñå2áÜ'ðñðAßÞdå2áñ Ÿ G êÜÞdå2àdß.à$Ü } Q  ëå2ð } Q êÜÞdå2àdß à$¡ Ü ž¡Q¢œ–£%Þdåá,rñ ž G ÞßAîñÝÜ ⠞¡Q6Üå6àÛ2ñAßàëSá ‰†Š"¤   ‚ ž GSI} Q IXŸ–G †.Þß ë Ý)ßÜ]ëåDëå ßâMñ7ô œ9™=ÞWå2ë Ýd¥Ý    ßÞWå2á,ñ } G Þ\ß"îñÝÜâ } Q ÜåàÛ2ñ ßà$ëSá ‰ Š$¦   ëå2ð }§G êÜÞdå2àdß6à$ Ü ž G   ‚ ž GSIS}§G)ISŸ–G †7Þ\ßwë Ý)ßÜZëåOëå ßâMñ'Sô œ ¨1Üà$ñ"àÛ2ëà.‚ ž Q IS} G ISŸ G †rÞ\ß7å2ÜàHëåZëå ßâMñ'ô   ßÞdå2á¡ ñ ž Q Þ\ß'9/ 'U3 àÛ2ñ åÜ'ð2 ñ ©ž G«ª Üå+ßàëSá ‰ Š$¤yà$Ü6â%Û2ÞdáÛ }§G êÜÞdå2àdß œ

A1 B1

A

A2

B

B2

C

C1

B2 A2 C1 B1 A1 SC SB SA (c) Stack encoding A1 B1 C1 A1 B2 C1 A2 B2 C1

üHýdþ%ÿ ¬$†(a)­9Data #$ 3 ®(b) !Query 3®#$¯=ýF>þ #(d) ° 3 Query 62 results ÿ3 ýF>þ2 ! ®±H ² sD+"N,,- A+ '0rC -5 ! 23" NO,& ?-)&@Z-)&

 r' @3 '-C"#%Æk j ¨i jkl'm!'&+ef%ghi jkl'm; 3.2

^H @ 'PathStack -C½Æk j ¨i jkl'm #3E.C -C6 3 2='&E.,M H* 2,  C6  ,&{#-8 ,&]-)&5<>-@'A·# 0$ ':Cb AE.C,&6C  ". '&'-)&5&2 .0d 3€!-)&@' 1AD ,27,&;=sØC,& C"3"1 &'-)&q&2 10d í1 -)  Aq ,27,&# C+ @ -C2Ò-7 -) O,& K D"* 2 )-I 01él Ä° 9/,0$ '17'&-)   -&2@CA&  H-)&DC21 "H'& N;

¢3m3‰' ŽŒœ³wnš'Œœz´ŒšµŠz¶K·¸ (¹wºœŽ.»>Ÿ¥*¼½·¾ (z& ·S¿À L Á ‘ m3Œ•?ŽzŸ ´‰› )µ7¼½·¾ () žç‰  ·7À ŽB Ÿ o›ˆ'Œ3£ ‰¥)o)¶K·¸wl Ã)Ã–Ä ^a`Sb*h d'efb ÄKÅ d ()Æ ºœŽ  ¼F»>7 ³zÇ)Œ %*¼½È  EG&! HC4* ,H '0;B(-)&H…?#-)&7^b @3 '-CRÆk j ¨i jkl'm# -,&-)zC è &'-)&-)&2@KC+&"&2  9%+  ' %;K(-)&+ÐY„[" U 6 2-' !&2E. 0W “C N C {'&& >9%=,&   H  &2E.# @-U ,&!N&2 E. @ . 0 CA&H ½&2   19%A  %;.%-)&21ù7'@ ",&HC '- .&2E:,1,&  [-)&qC! N1EG-CDC &ER3 &  ;=sØC,&2U ,HA& G-M 2C6 '&6CH w N Š$#{C" N1 '&-)& &Z&2 -)&@ 0H  ='&E.,1 +C"* , 23C>#{'&Z^b @3 ' -C Ç'¨© fi©¯'§j2g© ¬ Ç"-]-)&U3 'NI9Ø^H @ -C2×Æk j ¨i jkl'm P )-)&!¸¹çS. Z» 2 2¼6C1'&E.,; ^|&23  1E.Z0$ +^H @ -C2 Ç'¨© fi©¯'§j%g© ¬ Ç+  2 2 * ,K 23CR&2E:,&2 y-)& C2Z3`N+-D B  C F  C :'A-)& " '0W $  H ',H 0MCA* ," 23C>;:µGC-

E.-) ) H,& 6C #= U ,!C6* ,&2+ '0:-)&U 3- '&] 0^b @  -C|Ç'¨© fi©¯'§j2g© ¬ Ç89"^H @ '-CQÆk j ¨i jkl'mç#C2H&2E.  C]* , 23CO'"   3 2Z-)&q 0dF '$  ! ',; <>-@'q„ZC 'EH52C_Z  ?0$ C3E.C,&_ '&  '& F ,&2'&1 @3AA &b-)&DC1* 2,"  C{; n3‰*µdfd'¥q›3s 'w ‰è›^aŒ g Žga‰‡eFŸé o)e'¶XkÈHb)å eÕ efÈHkæ `¸ d'efb dê\cxefk`ëzq`7]'é ` ocœ3\)‰]ºd'´gas Ã)Öç h\ì`Sd"jcí]f\)sîefk`]'\Ä \)e3e'j \ efk` q]']f`SheêÄKÅ ^a`7bc$h\zì`_ïê` Ã)à b*]'`gahe'`7]'`7d'ef`Sì;gah b)h ð`b Ä `Sdfdf`Sì b)d Ã)à ^adf\ b)dfd'qs `_e'kb)e3ï3Ä `;kb `rb Ä7Ä i)^a\*ðb)^b)]f]'È3bñ é ÙXòFÕKóSóSó7Õ È3ñ ô ò t Ã)Öç \cxè\)gahe'`7]'d$ef\¡e'k`dfe'b p `7^a`Ss `7hzefd ŽŸ¥3Ì*ñ Ù)óaó ô ò Ã)à K Ä Å ]'`7è]'`7d'`7hzefd$efk`Mè\)dfgae'ga\)h¡gah2efk` e'k9d'efb e'kb)e Ã)p à ŽŸï3¥3`;Ì)b)ñ ]fõ `rò gahef`S]f`Sdfe'`7ì†gah9cí\*]e'k` q]f]'`7thze3d'\*õf^aö qe'ga\)h ÄKïÅ k`S]f` Ã)à efk`rð\)efe'\)sî\cx`7b k dfe'b kb*Ä dè\)dfgae'ga\*h Ùt j Ã)Ã Ä ÄKÅ b)] ï3`;b)]f`gahzef`S]f`Sdfef`Sì¡gah2è\*d'gaefga\)h \c$d'efb Ã)Ö÷ Å ÈHæ ÄKÅ2ÈHå t ( ¹ ŽŸ'¥3Ì)ñ Èxå ò ‘ÈHæ ï3`;b)]f`gah2efk`M]f\\)e (z & ŽžZ¶XÈH\)} å qefè‘.q‘ eêdfÙ \)¸w^aqÃ*efà ga\)hdHc]'\)se'k`dfe'b d () Ã)à ÄKÅ ()Æ ‰›'Œ)Ç ›ŒÁ ]f` ¼½È@qñ ]'ô dfòFg ó Ž` Ÿ¥ b)^aÌ)^ ñ ô òFÕSóKóSó7Õ È3ñ ÙKòFó ŽŸ'¥3Ì)ñ ÙXò ¾ (z Ð *o .Ã*Ã Ä p Ä ()Ñ žç‰'/õ ‘ Ù Œ3‰È@ñ ÈHå òFó ŽŸ¥3Ì*ñ ÈHå òFó 3Ç ‰ ŽŸ'Œ3 Œ3‰ Ç š3'ŸŒ ()× o œ3‰ºz'´ ‰›Œ Ž‰Ÿ)o)¶KÈxåùø Ù)Õ õK¸ üHýdþ%ÿú"§û #$®=¯ ÿDÇ'¨© fi©¯'§j2g© ¬ Ç

sqC2,&O 2,&F`C-) K@ 7'] ,&!-)&IC+* ,  C{# E.q'  K&R KNqC2o´ ® Ë® ¯ Ì §ÍZ-)&0$ '"3- '&º-)& y3,   &;_Æk j ¨i jkl'm "& "&2K C'&@  #H9 6E.]&  ",&"C23H CD-"7Ç'¨© fi©¯'§j2g© ¬ Çb-H-)&U N%#(-H  & 1 ' 2A-)& '1  #>-)&T -- '&O 6'U3 '--)&2@& &, IE. N%;Qµ.C-+&K9%3`C-U3u9K7 ?-)0$ -)&@KC+, ,-U Z' ) P )-)&ù¸3S" Z`CNI0$ 6 2,&F`C-) R@ #.-)& E.C -C7 = '&  1ßÞdåã Ýñ>,-U .' ) P Ç'¨© fi©¯'§j%g© ¬ Ç P Š Uü ¶ I Š4a‚ Š U † J g ¬ ° ® ‡ ‚ Š U † J % -)&,  C2 2,&  NSS]& 9%-)&U N%#!'0$,wU ,-)0J -)&2@KC CZ´ ® Ë® ¯ Ì §ÍT '0!CZFE. &  ?-)÷/,A96 '& ;=>   -)&@+C '@'CD ) >&  b-)&DC1 N Š4‚ Š Uýü ¶,†%E: ' +-) ) %9%A '#92=-.E. ' + 1" AE. N C'&-H- +& ; cd0AE:" -)+C]z&2 H'&E.,! C26* ,  Cq9%" , ,&!-)&"    F  '0%  , P 3M '  % ] H  0d  '$  3A ',S,#2-H-A3+ 6!C23b-A H&2 3AÚ6!C23 3`CD-)&U 3- '&O '0GÇ'¨© fi©¯'§j%g© ¬ Ç1 ' 21&2E.1,&2   -)&qC6 N-)&qC"  F '$ 0 ',;+µM 6  +&2E. -)&OC26   F  '0 ',#=E."E.  Z&q I»$9  N¼ '&E.,#=&2q, ØC,-)6 2   &-) E.6+]C !&2 '&E.,6 - '5 DC2“-)&oC2 " ',5&I9%5  (; µ.C26'-) 6 0bC EQ 3`C-U 5C -!&23  ) I'" ,& -)&q‚ Ð'†{'&'1 3 -+C,A0$ 'H3 '&A 0= 23 ; ‘r’$“$”–•—˜_Ð ; …?O ; þMÜå ßÞdðñô àÛ2ñ"Ýñ$òà ö Ü ßà(êëàÛ   ±©©'$m ÿj%gj¯ ® ÿ ²³´   ÞdåñëáÛÜò!àÛ2á ñ ›ïñ7ô "à$âMÞ)ã ß7ܧ ò ™=Þ ã?ïô ñ œò!âMñ+ïßñð6à\Û2ñ îÞdå2ëSô ]ßà$ô,ïáàïôë ÝçäÜÞdåqë Ý ãÜô,ÞWà\Û ö ß!Ü ò     7  âMñ5âMÜï?Ý ð .ôßà å2ññ,ðDà$ÜáÜ ö ê{ï à$ñ ö ëà$áÛ2ñ‡ß7à$ÜZÜå2ñ5Üò+àÛ2ñpêëôñå2àdõYá,Û2ÞÝð]ßàôïá‡õ à$ï ôFë Ý{ôñÝëà$ÞdÜå ßYÛ2Þ ê%ß %±©©'$m ÿj%gj¯ ®   Üôbj%gj¯ ® ÿ²³çH´ œH£%Þdå2áñ )ñ ñ7ô  ±©©'mÕÛ2ë ß6ë+j%gj¯ ®   àÛ2Þ\ß6îÞdå2ëSô AäÜÞWåØâMÜïÝð]ê{ôFÜ'ðïáñ]ëDÝÜàAÜò å RîÜ)Ü ‰ ß"ðëà$ëîë ßñ   )ñ ñåZâ%Û2ñåØàÛ2ñôñ ö ëàáÛ2ñß7ëã?ëÞWå ßàHë ëôñ1Üå¥Ý 1ë.òñâZîÜ')Ü ‰ ßHâ%Û2Ü ßñAà$ÞdàdÝñ1Þ\ß @œò   ÞWå ßà$ñëð   âMñ .ôßà áÜ ö ê{ïà$ñ,ð ö ëà$áÛ2ñßHà$ÜAj%gj¯ ® ÿ²³´   âMñ âMÜïÝð ë Ý)ßÜ ö ëà$á,ÛAêëÞdôß ïå2ðñô1l'¨k ‚ j ® ªZñÝñ ö ñå2àdß   ë ß6ÞdåqàÛ2 ñ Rðëà$ëDà$ôññ+܈ ò ™=Þ)ã õ ïôñ   â%Û2ÞdáÛKðÜqå2Üà!ñ à$ñå2ðDàÜqà$Üà$ë ÝHëå ßâMñô`ßwàÜqàÛ2B ñ ›'ïñ7ô  êëàÛ]ê2ëà$à$ñô,å œ>ßÞdå ã AÝ ã?ÜôÞdàÛ ö Æk j ¨i jkl‡m   ê2ëôà$Þdë ÝMëåßâMñôß ëôñM 3   Dôñê{ôFñ‡ßñå2à$ñ,ðHÞdå7à\Û2ñ=ßà$ëSá ‰ ß   ëå2ð1å2Üà2Üïà ê{ï Fà œ >ßõ ÞdåãàÛ2 ñ Kðëà$ëà$ôññ]Ü2 ò ™=Þ)ãï ôFñ   Üå ¥Ý +Üå2ñ ' :'&E.,   Þdðñå2à$Þ .ñðî)àÛ2ñ ö ë,êê{Þdåã"!p±©©'m | P ¶ I ¶qVA¶‡„*v I ¶S   j%gj¯ ® | P ¶ I … V· I … S   ²³´ |èP ¶ I Ð I ÐS #   Þ\ß:ñ'åá,ÜðñðAÞdå"àÛ2ñ4ßà$ëSá ‰çß œ

3.3

.µ CGAnalysis 0J ' )  E.-)&2@" of

' % 3PathStack -- '&D-.pNç" !'9 )-C-)&%@6C2 ' &2A '0B^b @3 '-CÑÆk j ¨i jkl'm;

$%'&"•&(*),+-).&0/ºÐ ;¶ ; òbâMñ 1 å2Üð3ñ 2   àÛ2ñGßñS›'ïñå2áñ.ÜòHá,ë ßñß îñà$âMñ,ñå"å2Üðñ2ºëå2ð1å2Üðñß54“Üå"ÞWå2áôñë ßÞdåçãbÜôFðñ'ô:ÜòM´ ® « jÆ©Ç © Rª Þ\6ß P 8¶ 7 … S 9:Ð 9:· 9zœ þMë ßñß  ëå29 ð þMë ßñß 1ëôFñbÞWå2à$ñ'ôÝñë'ñð   àÛ2ñå ë ÝWÝ=å2Üðñ‡ß!ÞWå þMë ߌ ñ šDîñ$òÜôñ7ëHå +å2Üðñ"ÞWå þMë ß ñ ;   ëå2ð .å2ë ÝdÝ¥ ë ÝWÝ>åÜ'ðñßÞd å þMë ß<ñ ;©ßñ, ñ ™=Þ)ãï ôFñ = ª œ Case 1 Property

Segments

X.R
X Y

Case 2

Case 3

Case 4

X.LY.R

X.L>Y.L X.R
X.L>Y.R

X

X

Y

Y

Root

Root

X Y

Root

Root

X

Tree

Y X

Y

Y

Y X

X

üHýJþ/ÿ?>"2­9   ˆ°K#x Æk j ¨i jkl'mO 3¯Ief%ghi jkl'm

@3˜”;”–“}Ð ;¶ ; £%ïêêÜ ßñ1àÛ2ëà2òÜô1ëåTëô,îÞdà$ôëôS"å2Üðñ¡8DÞdåDàÛ2ñ êëàÛ[êëà$à$ñ'ôå ›ïñô7   âMñ5Û2ëñà\Û2ëàHh ® j³%g ¬ i©'§ªl ® P 83S W 8BA9œ AÝ)ßÜ   ßï‡êêÜ ßñ"àÛ2ëàC
<2 . C"&2  C -)&7E.C -C C êëà\Û.êëàà$ñô–å 87ëå2ðAë å  ðëà$ëîë ß? ñ >   AÝ ãÜô,ÞWà\Û ö Æk j ¨i jkl'mTáÜô,ôFñ,áàd¥Ý 6ôñà$ï ôå ß7ë ÝdÝ:ëå õ ßâMñô`ß=òÜ_ô 8Üw å >œ sD &1C2 E½ ' -" )- ;w¿b-U ,&Õ'&qØ* , 23CZ 0 &2@3 C CB#Æk j ¨i jkl'mr'N¡  C+-)& b )-H '0=b&   ' 9_Âél Ä°=Å7´ ® « jÆ©Ç2Î # &2T   &Z 2   [ )-

r0 C F  .C :" C5C2* 2,! 23C>;:c=-.'-@C0$ 'E.  .C #3, )?-)&@"C4-)&U  - '&. rÇ'¨© fi©¯'§j%g© ¬ Ç# C cFt n|'&qv.L4xº ! '0GÆk j ¨i jkl'm6'" )-)&'"-)&OC62Ñ 0 -a

0.Cw  C-)& p )-;5Ï -)&6C2" 1 '0GÇ'¨© fi©¯'§j%g© ¬ Ç -!   % '- &2 ! C+-a5 '0rC26 ' 2" )-#HE."C'U3+C 0J ' )  E.-)&2@5 ' -"' )-F[ V IKJ$˜-&-%$˜”“Ð ; …?M ; LHÞ ñå1¡ ë ›ï ñSô >ê2ëàÛ4êëà$àñôå 8!âMÞdà Û C[åÜ'ðñß   ëåð+ë å _ðëà$ëîë ß;ñ >   AÝ ãÜôÞdàÛ ö Æk j ¨i jkl'm5Û2ë ß!âMÜôßàdõ áë ß ñ ONPºëå2 ð þQRà$Þ ö ñá,Ü ö ê%Ý*ñ Þdà$Þdñß1ÝÞdå2ñëô ÞdåqàÛ2ñ]ßï ö Üò ßÞ)óñß6Üò6à\Û2O ñ CRÞdå'ê{ïà.ÝÞ\ßàdß6ëåðàÛ2ñ+Üïà ê{ï à.ÝÞ\ßFà œ™%ï ôàÛ2ñô   àÛ2ñ âMÜôßàJõYá,ë ßñ ß$êëá,ñ"áÜ ö ê%Ýñ ÞdFà 6Üò AÝ ãÜô,ÞWà\Û ö Æk j ¨i jkl'mTÞ\ß7àÛ2ñ ò ©Þ ª àÛ2ñ]ßï ö Üò6ßÞ)óñß"Üò5àÛ2ˆ ñ C½Þdå'ê{ïàGÝÞßàdß   ëå2ð ö Þdå2Þ ö ï ö Ü ©ÞdÞ ª àÛ2ñ ö Bë Þ ö ï ö ÝñåãàÛ+Üò1ë6ôÜÜàdõà$Ü õFÝñ,ëò>êëàÛ+Þdw å >œ c$ -" 2-,  I- % '&+ & C 6C25E. 'F3 -7]    -T '0:^b @ -C2 Æk j ¨i jkl'm -5Þdå2ðñêñå2ðñå2àMÜò àÛ2ñ1ßÞ ó'ñßÜò1ëåH"Þdåàñô ö ñðÞdëà$ñAôFñßïÝàdß,;

3.4

^ PathMPMJ í '-@C0$ 'E.I@3,&2' )-a3- '&} '01C+L=D¿1À Á|' @3 ' -Cق … ¸‡†%0$ 4  C5* ,-.  H '&A3Q =!-"A @ A' ) =  )2- &2;pvG &2-,rC21 23CD* 2  8 G*RSR 8Q RSR 8T;.µ.C2 9 -+-[-7 10$ ' )  EHV¿A C"z  P &S1, "& 0d  CA3 :$< UA&2wã?ñå2ñôFëàñHë ÝdÝßÜ Ýïà$ÞdÜå ß=C2341C234 2 -, '!, ",&A0d 3 : < U ;HµGC,&{#% U'&ˆ  : < U &2qîëSá ‰àôFëSá ‰ :
&>;=sDb,0$H C- ' @3 '-CÑ HÆk j ¨³Æ³2ìÌkg Ë® #-)& '1 %,-",&; c$1 &

21C 17'-)&'-)&-)&@Ø & D '&""N /,!  P 0$ 49 N N-)&2@1   % 3S4-4  A-)&,Ú6-,&#2-)&A ) %"N &I  % -)&] TC25' )-5@ 7,&"C 6'&o" COC2 ,,&6, "&]-)ù & : < U P C è 0!C26  "&  S,;}^ 9%"3@ -" +]Zßà$ëSá ‰[ 0H"'N#=3 ,-)9%Õ-)& ^b @3 '-CÙÆk j ¨³Æ³2ì=-)&D<>-@'"¸;=cJ&wC -H  2- -a@3,&,' ) -a3- '&D '0{L=D¿1À Á # C+* ,"&  EG-) ) %& 4CU 11-)&@'  "N-)&ZC  +#%9 H» Y¼6"'N1E.C,  Y+-1Cp&19%,

'0{-.'& .-)&+CA* , r; ‹= C5"'N6 % -)&b 1& )-, % 3-- '&Z-)&wC2! 5#2'&+0$ A* ,"&  2  8#%C2  ZfN C"N -"C]z % -)& -)Z & : < CKC "C6, ",&"-)Z & : <  '0J,C21,,&H, 7,&b-)&DC1 | r0 8N  ZfN Cw'& ; ¢ m3‰ Ž,Œœ³.nš'Œœ•)n•S[)¶K·¸ l ( ¹wºœŽD¼F»{‰žz¼Í < ¾'Êý¼FŽo ‰‰Œ¼F·¾E\ Ÿ3Ì'Œ–)¼F·¾3ËŸ3b*ì ÌŒ b*l h ¼íÇ'š3`ì`SŸd Œ*¼½`7·h¾fì¾'¾fb)¾ he'd (& žç‰D  ¼F·SÀ3ÝOo‡›ˆŒ3'£3‰¥)o7¼F·¾'¾ Ã)à p Ä Ä (* ºœŽ  ¼dŸ3 Ì'Œ)– ¼F·SÀ¾ ËwŸ  ÌŒ*– ¼íÇš Ÿ*Œ ¼½·7ÀF¾'¾f¾ (*Æ š)¥ Ò'šzŸ µ ¶fÍ
I   AÝ ãÜôÞdàÛ ö Æk j ¨³Æ³2ìTáÜô,ôFñ,áàdÝ¥ôFñàïôå ß5ë ÝdÝëå õ ßâMñ'ôßMòÜô8Üåw>œ sqC -) qCFE. Z,&- '&D '07L4D¿1À ÁÑ /'D- -) # C?-)÷%,&2[9%E.&KC,-)+ %0$ '"&2+- & -'9  #13 E..C' ) {.-)&5C. %,-7,&' B- '&{;=< C2,#ç =E. =C2 31EG-CwL4D¿1À Á!#2^H @ '-CíÆk j ¨³Æ³2ì4-b& H3 2 3 - )  ' -"' =,-C,; 4. 4.1

TWIG JOIN ALGORITHMS

^ Limitations | -@'C0$ E.'ZE:of 'DUsing

'0G  PathStack -)&2@D'&E.,! +* , E.-@ 23,&I-7  3 % DC+E.-@-)& Z1 -)  [  3  '$ 0>  C6  ,&# HÆk j ¨i jkl'mA 1-,&-)0$6 ' )- '&A 3`C6-)&?-U -2 M 23C>#&26C,&6",@3,X '-)&5CA  )2- &2H  3 ACH'&E.,= 1C2H* , ;=µ.C -='    C{#2E.C -C5E.

 %,-",& ) ZU' ) 1-)&TÏ- '&T„# 0$3HC1 "10d&2' 7,&'   9 €3MC2=C &-* 49 " & 9-)&'!2' XY '-)&#2 E.'.1C2  )--   )2- &>V ö ëåH!Þdå2à$ñô ö ñðÞdëà$ñbôFñßïÝàdß ö ë "å2Üà=îñGêëôà4Üò1ëHå _ .å2ë Ý%ëå ßâMñô`#ç b-) ) ) [9%  'E1; ‘_’$“$”;• —¢˜y·;\¶3ˆ ; þMÜåßÞdðñôà\Û22 ñ ›ï ñSô  ßï îõà$âMÞ)ã6ôÜÜà$ñð]ëà=àÛ2ñ k'§j ¨© ªoå2ÜðñÜòDàÛ2ñà$âMÞ)ã[êëà$à$ñô,åOÞdå ™=Þ ã?ïôG ñ ©î ª œ`.ãëÞdå ßà àÛ2ñ  Oðëà$ëî,ë ßñ1Þd å ™=Þ)ãï ôFñ   à\Û2ñ!à$âMÜ êëà\Û ßrÜò àÛ2Þ\? ß ›ï ñSô S k'§j ¨© Hª ÿ « ¬ ÿ‡­k ¬®   ëå2ðTk'§j ¨© Hª ÿ3¯ ¬ ÿ°© ®   Û2ë 'ñTàâMÜqßÜ Ýïà$ÞdÜå ß ñëáÛ   îïà4àÛ22 ñ ›'ïñ7ô !à$âMÞ)ãAê2ëà$à$ñô,å7Û2ë ß1Üå ¥Ý !Üå2ñ1ßÜ Ýïà$ÞdÜHå œ cd&K@ &2, $#b-)0!C* , P   3 $ '0S  C]C'U37'&   )2- &2!C A "&2 31 '&-)9" 6C21z &' =&2E:,#22-)&@ Æk j ¨i jkl'm P  MH9 $ 2-)&S8-M9% ' -" $#?-)& C23>C. U ,  ) .  23- '&q A0$ 1+FE.-@   &-1   % '- &2 .&  XF2 ]C!-aA 0.C1-)& 21&2C1z &' = 2 2#%92'   7C2!-a '0M-)&,"?-3  ;cJ&DC-A- &>#%E:1,N  1 U3, 7AC-b9%  2-" )-62-)&@"^b @3 '-C|ef%ghi jkl'm; 4.2

H^ @ 'TwigStack -C½ef%ghi jkl'm #3E.C -C6 3 2='&E.,M H* 2, FE.-@ 23,&{#b-" ,&I-)&_<>-@ Dƒ #.0$ 5C23E.C2,& C3"+ &'-)&K&  ]0d 3èZ-)&2@ ZA_ ,27,&; ^6EG-C_^H @ -C2 Æk j ¨i jkl'm#HE.C2&KC "5 '&-)& & >0d _1 -)  A] ,",&#C=' @ -C2½->3-)  ,&2D 6A* ' )-F 0.él Ä°19%,0J '""& -)   -)&@C & b-)&DC1 7b&2 &C 3`N; ¢ m3‰ Ž,Œkœ³w b)dfÓ)` ºÙ ŽSm´ŒšzµŠz¶X·z¸ Ã)Ã^a ( ¹Oºœ?Ž»{Ÿ'¥z¼F·¾ (& ·*bcEd(B ‘ m Œ£3 Ì')Œ ¼F·¾ (* ŽZ ž ¶K»8Ž o l ‰‰‡zŒ ¶K·*bcHdK¸)¸ (*Æ µšŸ ´Œzš µ)Š ¶fÇš ŸŒ¶K·*bcHdK¸ Ö Ÿ3Ì'Œ–¢¶K·bcEdK¸*¸ (Ð Ž5 ž ¼FŽ o l ‰‰Œ ¼F· bcHd ¾-\2»>7³zÇŒ*%)¼FÈ Çš3'ŸŒ  7 ³zÇ*Œ %)¼FÈ$¾Êá¼dŒ3‰ Ç l ¼½È$¾ Ë nroHpq ¾f¾ (& Ç3‰ ǶKȸ üHýdþ%ÿ Gs" .dHþ #$ý!)ä èef%ghi jkl'm

^H @ '-Cíef%ghi jkl'm1 ' /, .-)&DFE. p C ;GcJ&5C2Az C  P )-)& ¶,¶3¶S,# 3" P îï à{å2ÜàMë ÝdÝ SM ' )- '&A 1-)&2-U -%' * ,"  F  '0M  CA' ! %;HcJ&5C1 &26 C  P )-)&Z¶…3S,#MC+  )2- &26'5",@3,X '-)&q  ! +C &2E:,A !C2!* ,6E.-@" 23,&>;

µ.C  ‰)ñ 1ðÞ tAñôñå2áñ89/E.,&6Æk j ¨i jkl'm'&"Cbz8 C23 ' 0Bef%ghi jkl'mH-bC =9%,0$ A1&2  u$
'0rC25 7ˆ  : ' -"' )-F 0$ '{* , êëàÛpêëàà$ñôå ßS,;%µ.C#EGC,&wC2* 2,5E.-@1 23,&+C H '&  '& F ,&2'&!@ # CD ' )- '&T "3`C-)&-U -? * ,  F  '0A  Cq-6ãïëôëå2à$ññ,ð5 +9%+"@ ,X -)&29  E.-Cq A  " &26 ' )- '&O 3`CÕ '0HC6 C,1  F '$ 0  C; µ.C-1,& !C b& ]-)&"- 6 ' )- '&q-A '@3, C'&DCAz &' B'&E., "C1* 2,5E.-@  ,&{; µ.C] '&Z",@3,X '-)&T C 5 '0H^H @ '-C“ef%ghi jkl'm7- )-)&'5-)&KC+è '0A-!-)& 2 P C25 ' )- '& [-)&-U -?   F  '0% 23C2SM'&" 2 2 P Cb&2E:,= ACH* 2,!E.-@  ,&/S>-a#3 '& 1E.C2,&!CM-)& 2='M-)&7 '1  ,B '0C2  3"" '&O z25 '0rC25?-)÷%,&+* ,Ø  3F '$ '01  C; µ.C -!*  -)]C 7C25 ' )- '&+ +-)&?-U -%' !* ,  C 9%5 ' "-)&I  F  '01  6 "E:, ) $#HE.C -CI&-3 9  `N-)&@PwÇ'¨© fi©¯'§j2g© ¬ Ç P 0d 3Ò<>-@ Մ S,#1E.C-`C} '   ' )- '&A-)&D '+ '0dF   3H ',#%'&& .9%12%; ‘r’$“$”–•—˜_· ; …?O ; þMÜå ßÞdðñô.ëãëÞdå6àÛ2 ñ ›'ïñ7ô !ÜKò x1ë ö ê%Ýyñ ;$œ   â%Û2ÞdáÛÞß"àÛ2ñ1ßïîõà$âMÞ)ã+ôFÜ'Üà$ñð6ëà.àÛ2ñ1k'§j ¨© ªDå2Üðñ Üò"àÛ2ñ"à$âMÞ)ã êëà$àñôåÞWÁ å ™=Þ)ãï ôF ñ ©`î ª   ëå2ðàÛ2ñ  _ðëà$ëîë ßñ!à$ôññ]ÞWÁ å ™=Þ)ã õ ïôñ  œ^zHñ$òÜôF^ ñ AÝ ãÜôÞdàÛ ö ef%ghi jkl'm!ê{ïßÛ2ñßëå6k'§j ¨© ªå2Üðñ ÜåqàÛ2ñ+ßà$ëSá ‰wŠ'{O|O}O~E€   ÞdàAñå ßï ôFñß"àÛ2ëàAàÛ2Þ\ßpk'§j ¨© ªqå2Üðñ"Û2ë 6ß ©Þ ª ëDðñßáñå2ðëå2à « ¬ å2Üðñ6Þdåqà\Û2ñ"ßà$ôñë ö ::‚Eƒ©â%Û2ÞdáÛZÞdåZà$ï ôå Û2ë ßë6ðñ‡ßáñ'åðëå à­k ¬® å2ÜðñÞd9 å :-„ { ƒO… ª   ëå2ˆ ð ©ÞdÞ ª ë6ðñßáñå2ðëå2à ¯ ¬ åÜ'ðñ7ÞdåZàÛ2ñ ßàôFñ,ë ö :'†ƒA©â%Û2ÞdáÛÞdåZà$ïô,å5Û2ë ß!ëðñßáñå2ðëå2à °© ® å2ÜðñAÞd2 å :-‡E … ª œˆ2Û2ïß   Üå ¥Ý 1Üåñ1ÜòbàÛ2ñ1àÛ2ôññ.k'§j ¨© ª6åÜ'ðñß ©á,Üôôñß$ê2ÜåðÞdå ã!à$Ü]àÛ2ñ1àÛ2ÞdôFð]ëïàÛ2Üô ª òôÜ ö àÛ2< ñ Oðëàë7àôFñ,ñ Þdw å ™=Þ)ãï ôFñ  Þ\ßMê{ï?ßYÛ2ñ,ð1Üå6àÛ2ñbßà$ëSá ‰çß œ_£%ïîßSñ ›ï ñå2àßà$ñê%ß.ñå ßïôñ àÛ2ëà>Üå ¥Ý 1ÜåñbßÜ Ýï à$ÞdÜå"à$Ü"ñëáÛ]ÜòàÛ2ñAà$âMÜbêëàÛ ßHÜòAàÛ2Þ\;ß ›ïñ7ô r k'§j ¨© Hª ÿ « ¬ ÿ­k ¬®   ëå2ð:k'§j ¨© Hª ÿ3¯ ¬ ÿ°© ®   Þ\ß=á,Ü ö ê{ïàñ𠜙=Þdå2ë Ýd¥Ý    àÛ2ñ ö ñôdãñõ)äÜÞWårêÛ2ë ßñ1áÜ ö ê{ïà$ñ‡ßàÛ2ñ!ðñ‡ßÞdôFñ,ð!ëå ßâMñ'Sô œ 4.3

dc &RCAnalysis -- '&½of E:TwigStack -,CZ & 0" @ -C2 ef%ghi jkl'm0$ +  -)&@IE.-@O* 2,-#1'&KC2&_E.&2 a6-  3   - ;T " 0HC]   '0$1-)&OC -"- '&O'

!-+0$ 'H 3`Nw '0M   &2&+9%A0J '&2+-)&q‚ Ð'†F; ˆ†˜Š‰‹)Œ/5),+)&5/Q· ;¶ O ; þMÜå ßÞdðñôMë à$âMÞ) 㠛ïñ'Sô =ˆœ;™%Üô=ñ,ëáÛ"å2Üðñ 8 w Ç'§±jª ®® Ì© ° ® Ç P =1S"âMñ]ðOñ .åñ àÛ2ñAC2 KÜ; ò 8   ðñå2Üà$ñ^ ð u <  ë ß!àÛ2Žñ :ô`ßà4ñÝñ ö ñ'åà4Þdˆ å :x<+àÛ2ëà/êëôàÞWá'Þ ê2ëà$ñßHÞdåë6ßÜ Ýïà$ÞdÜåAòÜô àÛ2ñAßïîKõ ›ïñ'Sô 1ôÜÜà$ñð ë$à 8œ5ñpßë !à\Û2ëàMë6å2Üðñ 87Û2ë ßëp!-)& -) " = ,&2'&1,&2- &}Þ ò àÛ2ñôñ!Þ\ß!ë6ßÜ Ýïà$ÞdÜåAòÜô1àÛ2ñ ßïî‡õ ›ï ñSô "ôÜÜà$ñð]ëêà 8áÜ ö ê2Ü ßñð"ñå2à$Þdôñ¥Ý "Üò!àÛ2ñAÛ2ñëð6ñ‡Ýñ ö ñå2àdß1Üò Ç'§±jª ®® Ì© ° ® Çz©K› ª œ LM ' % 3-- '&_Ð;\¶3#89 Ø &O<>-@'ù #>- -! % '& 0J '7 '9 )-C-)&2@CA0$ ' )  E.-)&@+ ""V @ꘔ;”;“R·;\¶3 ; £%ï‡êêÜ ßñ1àÛ2ëà2òÜô1ëåZëôîÞdà$ôëSô "å2Üð¡ñ 8DÞdåDà\Û2ñ à$âMÞ)ˆ 㠛ï ñSô AâMñHÛ2ë ñAàÛ2ëàh ® jÌ ® ‡ j P 83S W 8BA2œˆ2Û2ñå   àÛ2ñ>òÜ ÝdÝÜâ>õ ÞdåãAê{ôÜ,êñôàÞWñ‡ß8Û2Ü Ýð8  œ8BA½Û2ë ß1ë ö Þdå2Þ ö ë Ý{ðñ‡ßáñ'åðëå2à%ñ à$ñå ßÞdÜHå œ œ¡™%Üô+ñëáÛØåÜ'ð2 ñ 8r w Ç'§±jª ®® Ì© ° ® Ç P 8 A S   à\Û2ñ :ô`ßà1ñÝñ‡õ å : < ‘ Þ\_ß u < ‘ œ ö ñå2à=Þdw

šœ^x.ÞWà\Û2ñôw©ë ª 8 W 8

ô ©`î ª ‚ k ª ®'¬ j P 8 A S5ðÜ'ñß6åÜàHÛ2ë 'ñ A Ü. ë ö ÞdåÞ ö ë Ý{ôÞ)ãÛ2à4ñ*à$ñå ßÞWÜå]îñá,ëïßñÜò–8’A ©ëå2ðbêÜ ßßÞWî‡Ý¥ ÜàÛ2ñ'ô7å2Üðñ‡ß ª œåIÜàÛ2ñô]âMÜôFð ß   àÛ2ñ+ßÜ Ýï à$ÞdÜåTôÜÜà$ñ,ðDëà “ W ‚ k ª ®'¬ j P 8 A S1àÛ2ëà4ïßñ‡ß3u:”[ðÜ'ñßå2ÜàMïßñßÜ ö ñÜàÛ2ñ'ô:ñ‡Ýñ ö ñå2à>â%Û2Ü ßñ R á,Ü ö êÜå2ñå2à%Þ\ß.Ýëôdãñô àÛ2ëå+àÛ2ëàMÜòyu$<œ x-)&2@"Cb """9% U  #E.'&6  'U3"‚ І%C HE.C2,&5 3" & 9  8 A -G &+96h ® jÌ ® ‡ j:# u
3C26, "& -)&OC+3"" 0!Ç'§±jª ®® Ì©'° ® Ç P 83S,;Zµ.C,&>#  Cq-"6C23  8 A W h ® jÌ ® ‡ j P 83Sb- + '0.&  3#4E:

2 2  ) = ' )- '&1C23.2  u 9!"'-)&-)& -)&@" '&H N /,M&2 .-)&5C2.* , ; IKJ$˜-&-%$˜”“· ;¶ M ; LHÞ ñå ë ›ïñ'Sô Aà$âMÞ)ã4êëà$à$ñ'ô;å 8"ëå2ð1ë å  ðëà$ëîë ß? ñ >   AÝ ãÜô,ÞWà\Û ö ef%ghi jkl'mTáÜô,ôFñ,áàd¥Ý 6ôñà$ï ôå ß7ë ÝdÝ:ëå õ ßâMñô`ß=òÜ_ô 8Üw å >œ $%'&&-‰–•^—Œ˜±!®¢ä0™6cd&R^H @ -C2Êef%ghi jkl'm#1E:[, /  ? yz&Rh ® jÌ ® ‡ j P 83S]0$ 'D* ,ù  8 P )-)&K…3S,;Ñ^A"qC  h ® jÌ ®‡ j P 8 S W 8 A ;=>ž ""D· ;¶ #  ' /,_¶ ;}cJ0?8›W š 8 A '& ‚ k ª ®'¬ j P 8 A S7N @Z3`Nq-6  # & ˆ  8 A  A&2 3bC'U3"'&D&2 '!&2- &>;!µ.C2,0$ '1- -!@''&& 1 6 2-,-)  +-)&T'&D ' )- '&{#4 E: 3? U&2  8 A -)&O )-)&2Z¶3¶'&I &-)&2E.-CoC26&2"-,3- '&{; nAC,E.- #>& á  8’A€C23A9% Cq&2 '7'&Z,& &"  &2- &2='&"C,,0$ 4-> 2-,-)  4-)&7 >  M '&.  )2- &>; sDHC2&", '&.8 A N M N P )-)&AùS>&2! Cu -)&' ) 3#>-)0 8 A -A" 04&  3#%E.1 ' 1C   ' )- '& 0W |C1 N P )-)&Aƒ,¶ vS,; sqC -)  '&2=C2   40J ':* 2,7E.-@A 23,&4E.-C69% C &2 'F,& &'&Ø ',&FC -) _@ #HE:+&I  'U3

 2-7' )-O '& 0$ "C6 5EGC,6C]* ,ZFE.-@[  ,& C = '& "&2 'F ,& &b @3;=µGC4-)&-- '&-=-   ; Ï -)& E:A C-)& "C1 NA '& + ",&C23GCU 19% C 7 ,&2'&1&2&&2 '1,&2- &>#{E.11@'''& C .& ", 7,&AC H .&2 3G '--) 23 -)&&+ ' )- '&D- C2+-)& 7'&"3`N%;=µ.C2,0$ '3# CA7,@ H %   -)&@  +-A  2-7' $#{'&+E.ACU 1CA0$ ' )  E.-)&2@+ ; IKJ$˜-&-%$˜”“· ; …?O ; þMÜå ßÞdðñô6ë ›ïñ7ô Zà$âMÞ)ã+êëà$àñôÁ å 8KâMÞWà\5 Û C åÜ'ðñß   ëåðIÜå ¥Ý Zëåá,ñßàÜôõðñßáñå ðëåà1ñ,ðãñß   ëå2ðOëv å  ðëà$ëîë ߆ ñ >œAÝ ã?ÜôÞdàÛ ö ef%ghi jkl'm5Û2ë ß7âMÜô`ßàdõáë ßñ ONP½ëå2ð þ–Qœíà$Þ ö ñqá,Ü ö ê%Ý*ñ ?ÞWàÞWñ‡ß6ÝÞdåñ,ëôÞdå}à\Û2ñZßï ö ÜòßÞ)óñ‡ßDÜòDàÛ2ñ CºÞdå'ê{ïàAÝÞ\ßàdßwëå2ðZàÛ2ñÜïà ê{ï àHÝÞ\ßßà œ ™%ïô,àÛ2ñô   àÛ2ñâMÜô`ßàdõáë ßñ ß$êëá,ñ5á,Ü ö ê%Ý*ñ ÞdFà +Ü ò AÝ ãÜô,ÞdàÛ ö ef%ghi jkl'mOÞ\ß5àÛ2ñ ö ÞdåÞ ö ï ö ÜO ò ©Þ ª àÛ2ñ1ßï ö ÜòpßÞ)óñß1Üò1àÛ2 ñ CIÞdåê{ï àMÝÞ\ßàJß   ëå2. ð ©ÞdÞ ª COàÞ ö ñß àÛ2ñ ö Bë Þ ö ï ö ÝñåãàÛ+Üò1ë6ôÜÜàdõà$Ü õÝñëò>ê2ëàÛ+ÞWw å >Dœ c$A-p '-, ' Z- / ''&7 +&2 3]C #{0$ '!C6 " 0 * ,5E.-@ EG-CD&2 'F,& &1@ #%C1E. 'F3 -7]    -T '0:^b @ -C2 ef%ghi jkl'm -5Þdå2ðñêñå2ðñå2àMÜò àÛ2ñ1ßÞ ó'ñßÜòAßÜ Ýïà$ÞdÜå ßHà$Ü6ëHå !ôÜÜàdõà$Ü õÝñëò>êëà\Û5Üò1à\Û2ñ!à$âMÞ)ã ;

4.4

Parent-Child Edges .µ C 'Suboptimality  · ; …C2    & for I0J ' * ,OE.-@ 5EG-C}'&  ,& &.@ ;=xH& 0$  &   # -)&6CH HE.C,HC2HE.-@  ,&T '&-)&2!] '&C-) Ø @3 9%FE.,&TE. 6, ",& P  ; @ ;#%!C2"* ,+-)&5‹= ! "·;)…3S,#>^H @ -C2 ef%ghi jkl'm -"&2 D  '&@ ,w@'''&K 9%DcFt nÙ&2ovGL=xí ' -"' $; cJ& '-, '#:C2" @ -C2  -@'C1  6+ ' )- '&O0$ '! &2   F  '0.  CTC231 p& " CZE.-CT'&  )2- &Ø-)& '& C,  F '$ 04  C{; v. '&-,6C"* 2FEG-@+  &ZE.-CqC &  ˆ V ž I«} '& Ÿ #'&+ 2,&F`C-) D @3b9/E.,& P ž IS} S='&+9%E:,& P ž IXŸ S,;I{6C25AR Z+ &2-5 '0A&   ž G #.E.-C C -) ,& P -)&} ',á S ž†Q IS} Q IXŸ Q#A`C_C   ž†Q+C23`C-) ,& } G ISŸ G ;Qµ.CCD 7  : ¤ I : ¦ &2ù  :RC'U33+C,-) z , ",&2  ž G IS} G '& Ÿ G  /-U   ;DcJ&ÕC -! 3#ME. áëå2å2Üà%'"-)0B'&6 '0BC2½ 2-,-)  A-)&w   )2- &DEG-C '  U'&,-)&@

3C2,= "#&2!E.='&& = U'&2b&1  9%,0J ' N& EG-)&@]-)0:-A 2-,-) 231-)&q6 ' )- '&{;"^A" #

' -" )-D'&5&2  &2@3,19%1@2'&%; 4.5

H^ @ 'Using -C"qXB-Trees Æk j ¨i jkl'mO'&Ref%ghi jkl'mq&2R I   3`C"& G-)& C24-)& 24 )-= AC`N7E.C2C2,: 'M& >-M-M 2

'0{&+&2E:,H 1CA* , P  C5 'HFE.-@S> 23,&>;=sqC2,&wC2 -)& . )-bAU3,  '&@ #C -H""Np  3. '0{-" ;:cd&+C- - &>#%E:A   % !C2A! '0="U'-&A 0=~4F#2,&  z:õà$ôññ# '&wC2A-)& A )-A 7 %+ C-b  -)&@ ; 4.5.1

^ [-+XB-Tree & "qDescription @ @3#"CqA~4F-DIU-'&Z 06C2 ~4F #B -@&2Ø0$  -)&  -)&2@qC  / -- '&' , ,& - & Âél Ä°=Å"´ ® « jÆ©ÇRÈÊÉ%gh ¨jÆ©ÇMÅ ´ ® Ë® ¯ Ì §Í{ÎH '0:, 7,&p-)& CA_ ;qsD -)9%C]-)&IEGC,&o' ) &  H9%,  &2@6 "C1 "1 ,",& P%C1,&- '&D 1 -)  " ,27,&A-H'-@'C0J 'E.(; µ.Cp&  A-)&ZCp '0= 23@  '0:C2!A~4F!'1 9 C,-)w´ ® « jÆ©Ç 'P R S U' )P1C- -6- -)  DC2+ '0A  @3

'0D~4F6 '&OC R U' );TµGC+-)÷%,&2+9/E.,&O~4 6'&q'&OA~= -!-)&IC6 37'-)&'-)&K3p-)&,&'  @ ; ‹= CK&2  U -)&_'&K-)&&2  @3 0"CA~4F  &2-. 02A9/ '&2-)&2@!@3",&H‚ UJ RVI«UJ T.† P EGC, R ,&2 3 ´ ® « jÆ©Çb&2.  TK &2 3.É%gh ¨jÆ©ÇS(&261 % '-)&A A-:`C-)   @  UJ “-žSŸ {!P E.C -C6 &'-)&4&2 =E.-C"9% '&?-)&@"@3",&  3 ,  -)&, )2"-)&‚ UJaRIKUJ TG†JS,;>µ.C89/ '&2-)&2@!@3",&

'0{&2 H-)&+-)&,&' { 23@ H -@Cb '-' )  U3, ' {# 92HC,-) R % 3-- '&+]-)&q-)&2 -)&@q ',;Z~.- #: Cq 23@ ?    C !] % -)&,6 +C" 2,&A  @     J “ž‹¡ { C5CA&2ZC -)&@3,   J “ž‹¡ { C5CH¢C E{B£ EGC-CZ- C -)&  0HC2!&2  -)" &   J “ž‹¡ { C5C C A % -)& 923`ND?

  ;"µ.C" '&- '&O'&D"'-)&,&'&

'0=&~4Fb-U ,6- -) ! "C2 3p-)&w"~4F #2-)&@6C2 R U )2"3ACANH P%C!?-)÷%,&2 -AC C22  TRU' )b&  9%A  '  @3  CA-)&2 3; 4.5.2

sD""Using -)&'-)&OXB-Trees " % '-)&, ž8¤ C W P ž8¤ CE  žSŸ {I ž8¤ CE¢C E{¥£ Sb 6C2  E B { £ E C  ¢ C N   Z C  & 

 6-)&q 23@  ž8¤ CE  žSŸ { '0C+~4F ;Dµ.C2, ž8¤ 'E. 1  %,3- '&b U3,HCAA~=bC :'÷%.C -= % '-)&,V ¶ ;Gk ° Ë k ¬ l ® ;=cJ0 ž8¤ C W P ž8¤ CH  žSŸ { I ž8¤ CE¢C E{¥£ S4 b& b / '-)&  ZC+  "&2 +-)&_C+,,&" 23@  #HE:- O  U'& ž8¤ CH¢C E{B£ ;KnAC,E.-DE.],    ž8¤ C!EG-CoC2 U' ) P ž8¤ CE  žSŸ {J “-ž‹¡ { C0C I ž8¤ CH  žSŸ { J “-ž‹¡ { C5CH¢C E{B£ S4&26, ,-U , D U'&p-;

…;H°ª%g¯¯ é f ¬ ;rcJ0 ž8¤ C W P ž8¤ CE  žSŸ {I ž8¤ CE¢C E{¥£ S,# ž8¤ CH  žSŸ { - &2 3+q '0"  @3 #1&2 U -C ž8¤ CE¢C E{B£ N CI& -)& ž8¤ CH  žSŸ { #AE.+ 3 ž8¤ C"E.-C P'UJ “žSŸ {I vS6 qC23]- % '-)& "CAz .&  1-)& UJ “ ; cd& -- )  ž8¤ C W P ¡ yy CE  žSŸ {I vçS,#? / '-)&-)&@+ "Cbz.&2 A-)& C   3A 23@ 6 '0:C27A~4F ;!sqC2,& ž8¤ CG % -)&  5C21   & b-)& ¡ yy CE  žSŸ { '&]E:b3 U&2H-#E.4z& -CwC2HU , $; sDA&" -)0$5C2A U - 'A @ -C2"1 -) + !21~4 ;+^H @ -C2èef%ghi jkl'mç8² ¦ #(-)&O<>-@ 5¹ #M&2"^b @3 ' -CQef%ghi jkl'mG 1C238-M24~4F;Mµ.Cb & 7`C'&@  Z-)&½C2Z )-)&-)&?- ½9u ',&C; µGCZ0d&2- & gÇ Æ¯k2g ‹¬ § k¯§ ® &221-)0.C! ' { % '-)&,1-)&TC ~4  -A % '-)&-)&@Z 6] '0.&   P 32 .U )2"-)&qC

-@'-)&'  6S,;:cJ0BE.A,z&26gÇ Æ¯k2g ‹¬ § k¯§ ® P µS W AE.C,&µI-.&  &DA~4FA9A"@' 'z 3#%C -1 @ '-CÙ1 "C U - 21 &2 ; ¢3m3‰ ŽŒ'œ³wÓ)ºŽSmz´‡ŒšzµŠ”¥i¶K·¸ (¹wº'œŽ»{‡Ÿ¥)¼F·¾ (z& · bcEd ‘ m3Œ£3 ÌŒ ¼½·¾ ¶f(*¸6Ž`5 ž ¼FŽ on3šŽl ¥Ÿ ¨š3,›3X ¼íÍ 7 ³zÇ')Œ %)¼FÈ Çš ŸŒ  7 ³zÇ')Œ %¼½È"¾ʌ¼WŒ ‰ Ç l ¼FÈ$¾ Ë nroHpOq ¾f¾ (z& Ç ‰ ǶKȸ übýdþ%ÿ ?«" .dHþ #$ý!)ä “ef%ghi jkl'mS² ¦

IKJ$˜-&-%$˜”“· ; Ð M ; LHޏñå ë ›ïñ'ôSAà$âMÞ)ã4êëà$à$ñ'ôå;8"ëå2ð1ëå  ð ëà$ëîë ßñê>   rÝ ãÜôÞdàÛ ö ef%ghi jkl'm²8¦1áÜôôñá'àdÝ¥Hôñà$ïô,å ß=ë ÝWÝëå õ ßâMñô`ß=òÜô_8Üåw>œ sqC -) ZE:+ Õ& "CU D'&I&2 -' ! +9% '+C Ú6,-,&I 01^H @ '-Cèef%ghi jkl'mS² ¦3#.E.6C 'Eí %-",&  ) IC "-" %,0$ """3`C-)&@Ø 01* ,IFE.-@[  ,&"-)& ßïî‡õFÝÞdå2ñëô.à$Þ ö ñ‡;

5.

dc &6EXPERIMENTAL C -:- '&5E.= &4 EVALUATION /,-",& ( . &6CG /, 0$ "'&Z 0"C]XY '-)&}' @ -C27[-)& 2y-)& Ï?- '&Ð '&· -)&2@"9% 3C' B'&+ &C-" ; 5.1

s  -Experimental D   ",&Ø ) .Setting X '-)&q @ -C2"1-)&Ov u u -)&@ Cpz  Ù3AC   @ !,&@'-)& ;1^H ) M %-",&1E., &6 '&71„3*„ v +CaHLM,&-)Qccc2   ':E.-C6¸ù ƒ ~q 0%"'-)& "7 '6'&6… ¿A~K*  6 0=?-Nw 23 ; sD+2Ø9% 3CK &C-&2q' )FE.  K 3 ;Oµ.C2 & C-  7AA'& 3Ùb@3,&, +-)&@+CA 2  7,Vðñê{à\Û #òëå õYÜï à%'&Då2ï ö îñôbÜòðÞ tAñôFñ'åà(Ýëîñ‡Ý)ß;%<2  " 3b 0=C2! %-",&A ,&+-)&U3 ' U -)&%@ &C-"  #1E:@3,&2 K0d ) 9-)&2y&2_,&'K;|xb&   %-)z2_  )-,-  #1C+&  + 9%, +-)&KC6E.]& -) 0$  I--)9 %;ísD-_ C, & z@' - &2 P '@3, 0$&2 26'&Z'& 3è  2C"-)&KC+S!'&I'  D2OC2 A3`C¶‚ … „†H'&qANI‚ …'ù†.9%,&`C"N;Zµ.C2 3]  '1 3 -+0$ H  N '0B 23!'&'&59%A0$ '&+-)&q‚ І; µ.CA' % 74-H'&o»& 0$    ¼"0d3@ ",&: '0MC1ÔA~:>L  '9 3;HcJ& C2ÔA~.{LØ 7#3`C5'C 'H-4, ,& 9+!&23" #% C " 23@  #%&2D )-1 '0M ' /,;cJ&w &{#% C ' %,= '&'-)&=b- 3#C2= & 0$,&2.E.C2,=->E.3(  9 )-C2># '&"H )-4 0% 2C ';=sD.@ &2,36 'M &0$   "0d3@ "&

'0Ô~.>LR3p0J ' )  EH;sD+ZE.-CO'&q9 -Z'C ' '&q '&U3,ZC6 ' % '&?-)&@Z-)& 0J '"3- '&K I0$ ' "3;4< 'H3`C5 2 %,#%E.H,    C 3'C2 A& "1E.-C C]3' .-)&0$ '7 - '&O0$ '7C !'C2 ;sD6 '&-)&q & 0$  ?-)&@'C2 A &-) :E.A3`CD" U - 2 T'U3,D' C '#M ", CI 0*… vzv'C2 ;µ.C2" -)&@ZAK  .C A, CDƒ vç„ '&'  &Ð" -) ) )- &Z&2 #2, ,&-)&@ ¹ Ð#)„Ð ù6-)÷%,,&H 2 %,b0W |Ð ù# z¹ vv &-* 2"2C '; 5.2

dc &RCBinary - %,-Structural ",&TE.  Joins 'q 'vsCPathStack

' )--KÆk j ¨i jkl'm ' @3 '-CÒ3@ -)&26 @'-6C 125 3p9-)& - '&_ 0A9-) &'D2' {X -)&26‚\¶†;7<2 '!C-1  % 3#4E: 2Z+ & C-Z q+ '&--)&2@K 0+¶3Q # vzvv # vvzvZ&2 '&K-K-)0d 0$,&p 9%,  V ž G I ž Q IJJJI ž^¬ ; sD"-2IC   CO* , ž GXRSR ž†Q RSRJJJ*RrR ž ¬ '&"U' ) ]-M2-)&@"Æk j ¨i jkl'm3;Mµ.C2,&{# E.U' ) 5' ) >9-)&' XY '-)&5 @-b -)&@"0d º'    -)&@' ) = % -)9  X -)&q ',;7<>-@'[¶ v+C Eb1C",2- & -"H '0/' ) X -)&6 @'-#E.C2b C6 @3p-M, ,& E.-C"H92;MsD4  1C2 EqE.-C"H ' )-" )-)&HC2=,- '&5-"

'0BÆk j ¨i jkl'm #&26E.-C1 6 )-)&21CA-7A-.'Nç. ! "* ,&- ='&D U ACA-)& 1 3 P '9/, ŠŠMS,; <2 1C-1* 2 #%Æk j ¨i jkl'm!  'NT… J „8Ð ­ #2 )-@C Z" '!C'& C]¶ J ƒçS¸ ­1'N&96C * ,&- .&D U ,rC21-)& 1 3 ; cJ&T & #{C2"3@'- 923D '&D9 -)&'Z' {X '-)& '&@ Ø0d 3Ò¶ù J ’¶ ­[ T„'Ð J vçS¸ ­ ;onb "z6 '&, )- '&_-6C23

' - -a3- '&K  "'&Z-! % '&   "0$ '!9 -)&'q' X -)&2#-)&29 ZXY '-)&_ ',-)&@q'&K ]-)&_D &_C23 -+7 'C'&_C-"6E. C2&_C2+9%]  '&{;½nb  &2 '&, )2- &-HC HCAC2  )--" @3"-b %,- 1 C]  3`CO 0b-)&@[9-)&2Z  MX -)&2 0J '7'9-' X -)&I   P4-)&OC -7  #M-   -)&O" 6C2&ID- $0$ '  -  U "&p-)&T,- '&O-"7 'U3,1C 9%1 @3C23 b9-)&2+' %X -)&2;

ìb)efb b)h \)he'b*gah s b)hzé¡s \)]f`^ab)ð`7^ad Q \)ef`;efkb)ee'k`b e'qb*^‹® ðªqerefkb)e_ì\z`7dh\)Äerb°H` er÷\)q¯ ]_e'` khÄ gaëzq`7Ä d$d'gah `;ï3`†\)h^aé9b `Sdfde'k` j Ä Ä ÄSÄ gahì*` ±`Sd3\c$^ab)ð`S^ad3è]'`7d'`7hze3gah2efk`Ä ëzq`7]'é t

Binary Joins

Execution time (seconds)

60

PathStack

SS

50 40 30 20 10

üHýdþ%ÿ08²$ ³#$$ý½ !ý® H3¯v´MýF3 4µ*#%ýF3 °K#$ 3 !)ä·¶{ÿ3ý

5.3

dc &!C Paths: -M- '&7PathStack E.41C2.vs Ú6,PathMPMJ -,&1 '0C.?-)÷/,,&MC2  )- -1  C5X '-)&D @ '-C"! '0:Ï- &ZÐ;Hs1z  ! 2 C FE. DU ,- &26 '0rÆk j ¨³Æ³2ì;qsD]qù3· ÖÑ &C-D 3 1EG-C 9%, ˆ  ž G IJJJ ž GO¸ #{'&-2  CT* ,-! '0:?-)÷% & ,&@ C;q<>-@'Z¶ ¶6C 'EH"C+,- '&K-7" '09% C `C& -* #: 1E., ) G 1C]-7"'Nç,&Z0$ !* 2&-' '&

U3,6C]-)& 6 3 ;qÆk j ¨³Æ³2ìÌk2g Ëç® -"1`CO  E.,6   'Ø DC+ ' - -aIÆk j ¨³Æ³2ì P @ ,&, ) I U , '&O ',

0!" @& -S,;½µ.C2+3 '&K-5C23]Æk j ¨³Æ³2ìÌkg Ë® -5   '&,U -U !E.C2&]9 N N-)&@+'&" HU ' {-".&  &'" % '- &2H 0MCb  P -)&  G %,-"&#2 :p`C 3"¶„+-"1" ' &  C'&ÕÆk j ¨³Æ³2ìS,;6Ï -)&2]C %0$ ' 7'&. '0Æk j ¨³Æ³2ìÌk2g Ë®  @' = '&-,'9 "E.-C!C2=-a

0MCA ".'&+Cb ,&@ CD 0{C2A-)& H* 2 #2E.H &   '&- ,!C-A3@ "0$ C2A7'-)& ,! 0MC-b ' %;

<>-@ 6¶Ð!C2 EH.CA,2- &D-"1'&"&219%, 0MU' ) 3Õ0J '7E. 5- +  CO* ,-6 U ,7C]& 0$   IÔA~:>L  6 P &2 3 CA  @3'-C -6' ! '&DCºy3 -S,;HÔb  C+ %-)z2&2-)&2@Z  ' %,- 9/E.,&I&   -)&oC -6  #CHÆk j ¨³Æ³2ì=' @ -C2| /,&2.12C6-"H923`N3`N-)&@ '&3 !U3,' :-"!C263""U' );5<2 '1-)&'& #M0$  Cb  C* ," 0> ,&@ CwC b-)&<>-@ "¶Ð #Æk j ¨³Æ³2ì4  E: " ',H '0="3@'&-2"" 1, "&AC'&DÆk j ¨i jkl‡mç; 5.4

s ]&Twigs: D

EQ0$ ,"PathStack

'&oE.-@* ,vs -#HTwigStack &2q 3 'ef%ghi jkl'm  @3'-)&"C &2-U 5'  )-3- '&_ 0HÆk j ¨i jkl‡m6 5 CZ9'&`C -)&5C2.0$ ' )  E.]9"!",@3b >;=^A=C 'E.&6-)&DÏ- &5· # ef%ghi jkl'mH-4  2-7' %0$ ':'& t',&'&b  - '&C-) %# 924-=-G  U'9 ]9%  2-" M0$ '= ',&t`C-) [  - '&C-) %; cJ&wC -- &>#%E.'&' a7C21FE. "3H, '   ; AUTHOR (2)

PAPER

A1 A2

A5

A3

A6

A4

A7

PathMPMJ

PathMPMJNaive

Execution Time (seconds)

20

15

10

5

0 2

3

4

5

6

7

8

9

10

üHýdþ%ÿ1Æk j ¨³Æ³2ì ¹H ÿ3 6Æk j ¨³Æ³2ìÌk g Ë® Path Length

sD]& E|  'Æk j ¨i jkl'm53@ '-)&+Æk j ¨³Æ³2ì;OcJ&O<>-@'  ¶‡…AE.HC2 EKCH,- '&w-"A&26Cb&p9%H '0%&    I0d 3è?-NK0$ +  C_* ,- 0!?-)÷%,&+ ,&@ C}'&K  &C-Z T6 '0"¶3# vzvv# vzvvZ&2 5'&y¶ vT?-)÷%,&+ ' 9/, ;v4 '  #{Æk j ¨i jkl'mA A-)&D &2-,9 9/,H %, 0J '"&2!C'&DÆk j ¨³Æ³2ì#'&C-A-)÷%,,&"-)&, 1EG-C  &2@3,Z  C½* ,-; µGC--D  '-)&€9_C2Z0$3C  Æk j ¨i jkl'm5"N7-)&2@ [  " U3,6C -)& 26  #:E.C -)  Æk j ¨³Æ³2ì%&> .923`N3`N!&2A 1 @3'-)&! '@34 % '- &2M 0  ;=<2 'H-)&'& #20$ A1  CD* ,6 '0M ,&@ Cq¶ v #2Æk j ¨³Æ³2ì  MC2=* -U' ,&. 0 zU =-"MC4-a. '0C2= '-@-)&2 %  # 3 ,&q-)&I<>-@ D¶… P 9%S,;Dcd&q<>-@'Z¶… P S,#>0J '! 23CI* ,-

0M ,&@ CTE. #2C ,2- &Z-7

0.Æk j ¨i jkl'm1- '&-  9 T  'E:,!C2&qC 1 '0GC26* ,&-' G'&{#M'&Z,  3,7 Æk j ¨³Æ³2ì;Mµ.C -49/,C2U - b-:?A 1Cb0$3=C2380$ .Cb  C * ,5 '0M ,&@ CDFE. #CA&219%,r '0= ' )- '&A-b3C2b @  P 7 '!C2&q¶vv# vzvvçS,#% ]7 A 0.C12- &q-"1-A2 -)&5  -)&2@7C2 ' )- '&A&25EG--)&@"C€9 N6 1-N%; < '1  '&@   CT* 2-#MC &219%,7 '0: ' )- '&"-1 '&- '9 " ) ,#M&2C"2- &q '0:Æk j ¨i jkl'm1-1,  ! 7* 2&-' :'&w'&p`Cw" '1Ú6,-,&C2&DÆk j ¨³Æ³2ì;

A2 A4 A6 A3 A5 A7

YEAR

CO-AUTHOR

2000

PAPER

(parameter d)

YEAR CO-AUTHOR

(parameter d)

1990 PAPER YEAR 1980

übýdþ%ÿ(a) ã32 66ýdþ·¶{ÿ3ý(b)  6ÿ3 ¯_ýF!)ä38»ê (c)ýF Á$!

5.4.1

SS

A1

s ]zAncestor-Descendant D pqC]* ,ZC E.Relationships &Ø-)&O<>-@ D¶· P çSp U3,6-)0d 0$,&A &C-' ) D@ &2,3D 3];;‹43`CD 6HE.3 @ &2,3K 60W ) r,&2q ;Kµ.C+z 692 0!C2   H&2 " &'-)&Z & +&  A '9%,   ž G I ž Q I ž T &2B  ž^¼3; µ.C21 '& 91 &'-)&&2 . '9% Á  ž G I ž^½ I ž^¬A&2 ž^¾3;A<>-)&' )  #BC2!C -)D927 '&-)&2T' ) M % 3-)9 "&  ; v4 ' 3#1C2"&I 2-' !  )2- &2-)&_Cz FE. 92 9"C2 3+ [& !  2'&Z 3   ' )- '&{; nb& ]C1C-)+92! &'-)&A 2 >  )2- &2;HsD1U'- C1-a

0=C2!C-) 91,  -U3" "C1-a1 '0=CAz E: A0d RƒÀ¿R !…'·8¿ P 9%3 '&]C M % -)&.C2H&219%,: '0{  )  - '&49% "H  A @ S,;=<>-@'A¶‡„ P 9/SMC2 EIC.,2- & -"H '0/Æk j ¨i jkl'mH'&"ef%ghi jkl'm:'&"C2.&p9/,. 02 '-'  ' )- '&! CD' @3 '-C  2A9%,0$  C 7,@'-)&@+, {; µ.C26 &2-&"@  Ø9/E.,&qef%ghi jkl'm6&2ZÆk j ¨i jkl'm7,  ]0d 3èC2+ 3,@3,&2 -)&@I' ) 1 '- ! ' )- '&+0d  CGz.FE. 1 9:EGC-C+.  ,H- 6-)&CH",@  , P ž G RrR ž Q RSR ž T RrR ž^¼‡SKÁE P ž G RSR ž ½ RSR ž ¬ RSR ž ¾ S,;!^AA,&-)& <>-@'¶‡„ P 9/S,#MC &219%,  '0. '- H ' )- '&"  2Z9 Æk j ¨i jkl'm"-"U , H '," 0H" @& -+ '@ 6C2&OC23

'0{CHef%ghi jkl'mH' @3 '-C+;Hµ.C2.&p9%H '0%  )2- &2 1C2 * ,6  +9"9% Cw' @ -C27A-#2 '0B ' #C213" ; sD"C,&ZC!E.-@+* , '0G<>-@'[¶· P 9/SA'&@3,&,  Z?-)÷/,,&" &C-6 31-)&qC2!0$ ' )  E.-)&2@TE. ;"^ 9%,0J ' #3`Cw 3 .-.10d ) M,&'7 ;=µ.C2Hz .9  p& 1 '&'-)&Õ'&&2 1 '9%,  ž†Q" '2  ž T ;"µ.C" &2 927 1& A '&'-)&Õ'&B  ž ¼ '2  ž ½ &  ;7<>-)&2 )  #=C2 C-) 9! H&2 3A &'-)&T'&.  ž^¬1 '† ž ¾ &2 ;Hµ.C2, 0$  #>C, -A& 1U ,&T+-)&@' 6 ' )- '&q0$ !C27* 2,FE.-@ # ' C '@'Cw C5 9 '&-)&2HA '@3b&p9/,H '0% '- >  )- '&;6µGC""-)&Z-)÷%,&25E.-CZC U - '" %-",& -6C23"E.6&2I D" ,- )-aZ&I-)&,"?-3]X -)&I  9%,0J '6@ -)&@DC2"z&2 H'&E.,;µ.C,,0$  #MC,]-1&  

PathStack

PathMPMJ

6000000

25

5000000

20

Values read

Execution time (seconds)

SS 30

15 10

PathStack

PathMPMJ

4000000 3000000 2000000 1000000

5

0

0 2

4

6 Path length

8

2

10

4

6 Path length

8

P S ‹=,- '&T-" P 9%S.Áb19%, '0=, ",&b  üHýdþ%ÿ0"rÆk j ¨i jkl'm¹H ÿ3 6Æk j ¨³Æ³2ìrÿ3 ýF>þÁ 43$!)ä3!ý®¯ !  !

SS

PathStack

PathMPMJ

PathStack

PathMPMJ

100000000

10000000

100

Values Read

Execution time (seconds)

1000

10

10

1000000

100000

1

10000

P S‹=,- '&T-" P 9%S.Áb19%, '0=, ",&b  üHýdþ%ÿ¢¬"!Æk j ¨i jkl' m ¹H ÿ3 6Æk j ¨³Æ³2ì;°K#$ˆ!)ä3Dÿ"°«#$¯¯vÃÄ2û ¯ ! B ! PAPER//YEAR

PAPER//YEAR//1960

,2- &q @ ]-)&@Æk j ¨i jkl'm!C23AU - !" -' )-a,-)&@ !9 -@"-)&,"?-3  ;.<>-@'+¶‡„ P S.C 'EHHC1,- '& -7]0$ !Æk j ¨i jkl'm+&2Tef%ghi jkl'm]0J '!-)÷%,,&6 -a P & =C8  3@ '-C -' S,;B<2 'BC2> 3M 3b P E.-C7…'·3Ð Ö & S,#=Æk j ¨i jkl'm6 ' Z&2 3Az &-C{#.-)&+C -)&,"?-3  Hz ) D' ) BC21U'-) 9 6  ! '&w?-N P r… Å } S,; 5.4.2

^ 1 Parent-Child -)&2I-)&OÏ?Relationships - '&O· #Bef%ghi jkl'm]-1& ! ' -"' .0J ' '&t'C -) q,  - &2C-) 2;5s & ERC 'E½C 1U3,&Z-)&TC -   #ef%ghi jkl‡mH %0$ '"=12C69%,:C2&5Æk j ¨i jkl'm ;M< ' C 6  % 3 #1E." -)zRC* 2,-+-)&R<>-@ Z¶· P 9/S 3 -)&@+CA0$ ' )  E.-)&2@5 '&'-)&V:' ) B'& 'F,&'&1, 3- '&C -) /]" & &D9+ 23CZ 0. ,&@ CZ9%E.&q '& &2C P C -1'&9%!`CN+95 ! 2-)&2@C"´ ® Ë® ¯ Ì §Í U )26 0AC" % -- &2 1, ,& - &2S,;q<>-@ D¶ùDC2 EH C"  0$ '!C6 %-",&B ; ‹4U3,&Z-)&qC" ,&2] 0 '&C-)  '&'-)&#ef%ghi jkl'm.-. &2-,'9 +7 'A0d z,-,&6C'&OÆk j ¨i jkl'm3;Zcd&Z '-, '#<>-@'¶ù P 9/S C2 EH C =CG&19%,: '0% 2-' %  )2- &2H  "9 ef%ghi jkl'm P C '@'CT&2 31 -)& -7' WSp-1" ) $;6µ.C2 & '&F -)&-"' )-W-!U -) ,&A0d 3ÙC" 92,U3- '&qC 1C &p9%! '0= 2-' : ' ) - &21  ?Z9ef%ghi jkl'm!-  3"-"1 '@3,7C2&ZC &19%,1 0=  >  )2- &2! "C1* 2+E.-@; sD1'  5U' ) DC21* ,5 '0:<>-@']¶· P SH 'U3,C21&  0J ' KÔA~.{LQ Z;Kµ.C -6* ,I3N 0J '62C '5EG-C ' /,. 9 )-C-)&C1 *… vzvv#2E.C2 1C'U31 " 2C ' E.-C51 2 %,.  9 )-C[-)&D¶¹ ¹ v#2E.C A-)&&]C : "   C ':E.-C5b ' %,:-)&¶¹ zƒ v ;MsDHU'"Cb )  E.6  2C"-)&5C   - '&C-)› ƋÇSÈSÉ8e Ê‹Ç v É Ë8ËØ8Æ ÈÆúÉ2#-$;  ;#MC"&219%,6 0   C 'H&26 2 %,HE.A'&U3,A0d º @-U ,&D2C '#0d 3 v P & 6 ' )- '&Sp 6и;Aµ.Cp '!C2 E.&-)&D<>-@ 5¶¸?; sD!'&w C .0$ 1C1* ,-#{ef%ghi jkl'mA-A3@ -)&Z"  Ú6,-,&C2&DÆk j ¨i jkl'm ;

PAPER//YEAR

5.5

PAPER//YEAR//1960

sD4&Sub-Linearity:

'Eq !C. U'&Using  @3= '02XB-Trees -)&2@1~4FM .    C6&26E.-@1* ,-;GcJ&! 2-, #%E..C EIC =C2.&  9%,= 0&2 =C23(&! .9%43A0d _C2=A~= P   &-)&@ 9% 3C 0%'&1-)&,&2 & S(-M-@'&-)z2'& W""' ) .C'&7C2 -a '0{C2.-)& #2E.C-`C52. 9$ )-)&2'A9/,C2U - b-)&5  H ) @ -C25;4^ME.=EG-) )  #3A~=ME.-C"" ) & b'  ,-- &D,÷%-U3, DN-) Z"&] 04& #(9ACp&p9/,1 04-)& ,&' %&  :'U3,"-. '@3 ;:nb&+CH C,.C'&(#0$ '= '@3 &  6 23,--"C," 0JE.,-)&,&2 .&  6 #>9 A~= '&&2 3]N-) O"& 0A&  !9%2CZ    -! "7 ' )- '&;s7 %,-"&' ) I 92-)&2ØC 9%  AE.C,&+-)&2@6&2 !'  ,--A'&@'-)&@]0d 3Q·" "ù3· ; <2 .CH %,-7,&.-)&+C-=- '&{#E.HU' ) 5?-)÷/,,& * ,-12-)&@Æk j ¨i jkl'm!'&Zef%ghi jkl‡mç#%EG-CT'&DEG-C ' A~=;Hs1U-C1&2  '  ,-F '0:C2!A~4FG9/, E:,& …G&26¶ # v…·AU' )M %,M-)& p&  3;4<>-@ 1¶ƒ P S>C EH CG&19%,H 0>U )2=  -)&5CHA~4F P , '3"-)& p-)& ,&' H&2D '0 SA0$ '!C6 31'&Z 23Cq* ,- Ø-)&oÏ- '&}„; Ð;Z<>-@ Z¶ƒ P 9/S C EH"C26 ]E.C,& -)&2@DC26FEG-@* ,D '0H<>-@ D¶· P S,#M&2ZC6 31 '0 Ï- '&؄?; · ;1<>-)&' )  #=<>-@ ¶ƒ P SAC 'EHC2  10$ 'rC2 E.-@* 2,1-)&6<>-@ !¶· P ‡S> 'U3,=C4 &0$   6Ô~.>LZ ; cd&Z@3,&2' $#MC"  M&219%,! 0.&  1U ---)&qC"A~4 µ>"-" &2-& Ø7' ) ,5C'&OC26-)& " 3-a]0$ " E.- "&2@3+ '0:&2 + 23,--;D<2 "C6 &C2-5 3# E.H '9'-)&+9%,. .0$ 'H   6* 2-;Hcd&6C2 31-  - '&#A~4FM'&" &2H-@'&-)z'&. % - '&4 0%C2.-)&    ;:cd&+ '& #0$ .-! ,r* 2-#2E..&6 !@ !  ]-)& C ~4FA&2 #2-)&D"&+3H E.&D "Cp 'U3#%-)& C,"'&O ' )- '&- %,RC  2@C2 2CE.C2    6;<2 'r 3+EG-CD  )2- &27 '&,&3 '&2 ,-)&+ % - '&A 0>CA #C2H- 23H '0BA~4F=-." ' -@'&-)z'&#{-)&2 "&]-)&,&' M& A&+9%!N-)  %%;

Partial TwigStack

PathStack 1000000

25

100000

20 15 10

Partial PathStack

Total

10000 1000 100 10

5

1

0 8%

9%

10%

11%

12%

13%

15%

17%

20%

8%

24%

TwigStack

100 Execution time (seconds)

TwigStack

Number of solutions

Execution time (seconds)

SS 30

9%

PathStack

10

1

0.1

0.01

10% 11% 12% 13% 15% 17% 20% 24%

3K

9K

27K

Fraction of data set with solutions

81K

243K

P çS‹42- &Z-" P 9%S.ÁH219%, '0=  )2- &2 P S_‹=,- '&T-"p0J 'H"   * , übýdþ%ÿú"1Æk j ¨i jkl'mM¹H ÿ3 6ef%ghi jkl'm9°«#$ˆ!762#B!766ýdþ¶{ÿ3'ý

Fraction of data set with solutions

SS

TwigStack

Partial TwigStack

PathStack

Total

100000

Number of solutions

6 5 4 3 2 1 0

10000 1000 100 10

9%

10%

11%

12%

13%

15%

17%

20%

24%

PathStack

10

1

0.1

0.01

1 8%

TwigStack

100 Execution time (seconds)

7 Execution time (seconds)

Partial PathStack

Data size

8%

9%

10% 11% 12% 13% 15% 17% 20% 24%

3K

9K

27K

81K

243K

Data size

P çS‹42- &Z-" P 9%S.ÁH219%, '0=  )2- &2 P S_‹=,- '&T-"p0J 'H"   * , üHýdþ%ÿÀ>"1Æk j ¨i jkl'mM¹H ÿ3 6ef%ghi jkl'mˆ°K#$2 3 "!ÌS®¢äMý߯!S66ýdþ¶>ÿ34 Fraction of data set with solutions

6.

Percentage of data set with solutions

RELATED WORK À -)&1  -)&2@1->&'  H 3'9 .-  ",&3- '&D‚¶Ð'†F; < '1-)&* 2 )-+XY '-)&q &2-- '&#M92&26X -)&K‚ ¹†M @ '-C""   )-9 WAE.C,&6C,. -=bz"-C2"-b-)÷%,&2H9%, FE.,&5CAU' ) '02XY '-)&3-)9 ;GÏç`C5 @ '-C"1b&    )-9 WA-)&5 'H 3"'-)&534C,b-M& A&2 3- '& 0%z27'-C 7-6?-)÷%,&2 ;DcJ&TC" '&

0H 23-' '&Z1 -7?-  923#%CA  9 í '0B ! -)&2@1X -)&2H9%FE.,&5 2-)b 0   - !,&--"C "9%,&o '&-,%#1E.C2,5 7" '& IC - 6 04-)&,A-1 'U3, ' T9%E:,&T 23-' :,&--6‚\¶· # )… v #%¶„†2-)&5p -)   -",&- '&;Hµ.C2HC &-* AU   ' %6-)& C-. 2 %,'H,  + !2C!X '-)&w ' %,3- '&y; Í 'E:U ,#C - " '&-,q !E., ) : 1C6`C&-* 27E."U ,   1 %,- = "CA&23 ! '0=    %X '-)&5  9 +; cd&RCq '&T '06!-2º'&€Q 923# * ,KU )23- '&º'&y  2-!-a - &QC +3 yq  + 0 'CR3,&- '&{; cJ&K '-, '#!E. NK '&-)&_C2D>  Ô~.DÏ+‚)…¶ #2¶ù #2¶‡¸‡†F#'&6C2HÁH- @  ق¶¹'†F#C23. '&- "U'- 2H  /= '0{* 2p  -)&@" '& 2C5 3 ;M  !'&"U'- 2.-4-)&5C,-)H '3@  =E., ) %34* ,  ' -)&2@1-)&2@1,  - &2 { 3'9 A"8CU .&  9%,&  '&- ,]-)&D‚\¶‡…?#…· #…'Ð#· #¶ v #¶ ¶,†F;=cd&‚¶…#…'·#2¶ ¶†#çC2H"  -)&@ '0=Aq 5 ]"&p9/,! '0=,  - &2!E.3A &2-,   '&@E.-Cq&2 3- '&O '0G 9! '0HI* ,-! +, ' - &2 H* ,-;wcJ&T 9* ,& E: 'NO‚)…Ð #{· #=¶ v'†F#{C2"2C '  '&- ,C2H  9 | 0>  9 )-C-\&@+ ,",&.0d 3   - '&' 7 '9 ;ºnb 6C ' )--X '-)&_3@ q0$ ' * 2, FE.-@ 23,&A& U ,3@ !C2A U - 21`C& -* ; µ.C4, ,& - & 0( / -- '&H '0{A5, "&6Âél Ä°=Å i jk ªjÆ©Ç}Èæú ¬ °Æ©ÇMÅ!´ ® Ë® ¯ Ì §Í{Î(-M,&- ) ]C M 0%v. &  &21&2D+-)  #{E.C2 6 &2-,Z60d @3",& '0:C2!L%^4µ_ 'C -)&@  %,3 ' 0$ 1-)&2 -)&@Z! 3'9 5‚ ù#M¸†#M&2 -,+  2-!-a - &ZC& -* .0$ ':Cb @ ,9 ;:µ.C -4  ,& - &ZE.3b " 3 2! '&-)&27,&p  - '&C-) 2

9%FE.,&_»Fb@'- '&¼+-)&TC2!H 3'9 ;rµGC10$ ,A '0 C HE. 'N5E.3H '&C -' M-#EG-C 'A '9%  -)&@ '& ,Ú6-,&A @ '-C"A0$   -)&2@5C2A  - '&C-) %; <>-)&' )  #6CZ,&E: 'N '0]¾C'&@K $;"‚)…3¸‡†!&2R^H ) ÖAC' )-)0$6H' $;{‚\¶†M1,  , 6,   " ';.µ.C"   %  9-)&2+  X '-)&w' @ -C27A = - --U3b0J 'H"3`C-)&@ * ,+FEG-@"  ,&;Hnb^b @3 '-CÑÆk j ¨³Æ³2ì.-A"@3,&,' ) -a3- '&K 0HC]L=D¿1À ÁQ @ -C2è 0 ‚ … ¸†. 5" Cq* ,  C#4&2T^b @ -C27"Æk j ¨i jkl'm6'&Zef%ghi jkl'm66@ ,& , )-a - &2D '0!C N$923K' @3 '-C" 0"‚¶,†r Z" C * ,]  CA&25* 2,5E.-@  ,&#2 %-U , 3;

7.

dc &RCONCLUSION C-+ 2 %,DE.U3,  ' % C ' )--X -)&R @ -C2"0$  "3`C-)&2@DAO* 2ZE.-@+  ,&#M ]  %,3- '&O,& '  A1`C6 0%A* ,1  -)&2@#9% C60$ M&23-U HA * ,I   'D-  ",&3- '&%Z&2K0$ ,  - &2 6A * ,[   ;DcJ&D '-, '#:^b @ -C2 ef%ghi jkl'm6E.3 C 'E.&5 A9%rct nK'&5v.L4xK  2-" >0$ .A @ 1, 3. '0{* , E.-@  &2#%&26 3-' ) D,Ú6-,&; µ.C, -!" '" 6,Ú ,-,&!AI* ,+  -)&@C'&T- E.-C -)&_C  % 0!C -" ' %;RsD+C2U +-)&-- R,÷%   Z3  7 0!C2-;|nb&`CK--)&U  U  C] '013 )-)Nç « ©¯¯© f%g ¬ Àh ÎÇ2g`±¯2g ¬ h"-)&oALM Co  - '&#H-)&K -- '&} C" '5 7" '& ØKl'¨{g¯ °&2 ° ® Çl ®'¬ °k ¬ j+3 P q-)&_C -6 2 %, T %,-)0$KFE.-@ 23 ,&S,y; Í 'EK'&DE.   &2E.A "LM C - &2 E.-C`C53* Ï[^H&2 3C2.-21-)&U  U C2H -,-)&2@5 @3C2

'0MC ' )--6FEG-@X '-)&AE.-CDU' ),$9236X '-)& P -)&, )?-)&@+ )-)& N   A ,",&SH 9 -) D,÷%-U3 * ,6 &2;

SS

TwigStack

PathStack

TwigStack

PathStack

300000

30

Partial Solutions

Execution time (seconds)

40

20

10

200000

100000

0

0

0

1

5

9

13

17

21

25

29

33

37

0

1

5

9

13

17

21

25

29

33

37

Depth of candidate papers

Depth of candidate papers

P S ‹=,- '&T-" P 9/SGÁH219%, 0M 2-' = ' )- '& üHýdþ%ÿÀ]"1Æk j ¨i jkl'mM¹H ÿ3 6ef%ghi jkl'mˆ#$  H¯ !  ! PathStack-XB(Internal)

TwigStack-XB(leaves)

PathStack

700000

1000000

600000

TwigStack-XB(internal)

TwigStack

TwigStack-XB(leaves)

400000

400000 300000 200000

200000

2

4

8

16

32

64

128

256

512

1024

1200000 800000 400000

100000

0

TwigStack

1600000 Values read

600000

2-Path query TwigStack-XB(internal)

2000000

500000

800000

Values read

Values read

PathStack-XB(leaves) 1200000

0

0 2

4

8

16

32 64 128 Node capacity

256

512

1024

2

4

8

16

32 64 128 Node capacity

256

512

1024

P S.LM CD* , P /9 S.µbE.-@"* , P S=µbE.-@6* , üHýdþ%ÿ8s"MÐw ýF>þÁÄ^ÌS!) Ñf -ÒBÓ^ÑÔ´Ò966ý!)ä 34 $!)ä3!ý®¯ ! B ! SÓM H3¯ÕÑf®‹Ò966ý!)äqÿ"°«#$¯¯ÃÄ9Mû ¯ ! Node capacity

8. REFERENCES ^ ØOÙkb)^ag cíb b)i)b*ìgad'k Ù\)qìb*d b)ef`S^ ñ ÙKò×Ö t ç ]fg b)dfe'b b jBږb)ht8ì^Û;Þ t‹Ü q ef]'j q ª e't q]fb)^à'\)gahjrd Üt ÷ èt ]'agas gaefg j `3cí\*] ÝX` á t Ö ga`Shp e5® p j ëq`S]fé;èt8b)ß efe'`7t ]'h–Ö s b)Ä e kgahi hãÞäÔç åXæEçHçHèéŒêrë’ìp åíïî.ðSç Ä ê8îOç  ÷ ä ꋯ óîéOåê‹óôõ1åê*íç äEçXê‹æEçå6Ä êMö^ótÔîOâ ó êrë’éŒê‹çHç ä éŒêrë j÷B÷Sj jñ ×ò ÖñHò–òò \)b)ñ i Ý kb)s¡ð`S]f^agah [`7]'hb)hì` ú Ý ò [$^a\)]f`Sd q j t ÷ tSø \)ðga` j t‹ùÖ gas `S\)h b*hì j ÷ t Ö ef`Kcb)h`Sd Ä q^j ®3ü_t q`S]fé Ù Ä ÷ Þ$j ç h ®ÜSt ÷ û ¯ ü_qÀj `SÜ]fét ¯ b)hi)qb)j i)` t \)] Å gahi Ý ]fbce çrp b)gat ^ab)ð^a` c]'\)M sîkefe'è ïïï ï \)6t]fi ß·ýrù·ß ±zëq`K]'é Ý ` jt ÷B÷ Ù ]fqh\ Þ Ã)à Ù\)qt ìb*ýd t à þ ]'û g à b)dfefb b j \)^agaÄ dfte'g ït gai \*gahd ñ ý ò ª èÀt efø gas b)8^ ® j ª t b)efe'`7]'h j Ý t b)Ö e kp gahi p çHt æ Ú ðBê8éæEó’ôy Ä Žþ ç åä î Ü Þ ÿ õåô é.ó ÷   -ê8¯ é a ç ä ì é,î ÷ ÷ b*] Ä  k Ä j÷¥÷rj t 

b)]f `Sé Ù ga`7]'hb) h t Ö kb*hs†qi)t b*dFqhìzb*]'bs k` gae'b ñ  ò ÷b)h‹t ì ù  q  ð f ] ) b s b)hgab)h rj ® Ü¢t gaìì^a`7ïêb)j ]f_`t c\)Ö ] Å j j r ¢ Ü t Ö Ö ÿ a ç Ž 3 ª þ  Þ ÷ èqð^agadft kgahir\)ðSàf` e3]f`S^ab)t efga\)hb)û ^ìb)efb†b)d® ì\ qs `7hzefd ÷ ¯ Ä  ãäÔå æHçHçEèé,êrëìMåíÄ-ö j÷B÷B÷ t kb)s¡ð`7]'^agah j \)ðga` t b)hì [$^a\)]f`Sd q ürqga^ae h ñ  ò Ý® t Ý t‹ëù q`S]fé†^ab)hi*qb)jBi)Ü`3trcíû \*]k`Sefj `S]f\)i)`SÝ h`7t \)qd$ìb)efÄ b;td'\*q] `Sd Þ$ç h ÷ ç ¯ ö ê*í6å6ä óô‹ãäÔå æHçHçEèé,êrëì j’÷B÷B÷ M Ä Bt â  \)hñ d'`7hd b)hì a g a ^ \  è f e a g s g S ú a g  h  i  ë  q S ` f ] a g S ` 3 d ) \ h

^a`7d h j t ñ  ò ÷ãäÔt å a æHçHt8çEùèé,êrëìMåí^õ"!$ þ t# ÷ !(t 'ÿ ö Ù  * ) ) & ñ %  d"t cí\*]ëzq`7]'égahie'` ±ze tBâ ) \  h ' d 7 `  h  d ) b  h ì a g a ^ \ a ^ ) i 7 `  ð ' ] ) b j ñ + ò ÷]f`Si)t gaa \*ht8dù hMãäÔåXæEçHçEè’éŒêrþ ët ì÷ åíKî.ðSt ç,ç ^õ-!$# å6ì é å6ê ãä éŒê‹æXé t ô ç â ì×åí_ö^óîOó óì*ç/# ì îOç ì Ù )*)  .  `7q e'd k [`S]f hb)hì` ú Ý  [$j ^a\*]'`7d t q ` é b)hì ñ 0 ò ç t Ý q gaq Ä ® j ÷ t ØEü Ä `3cíj \)ç ] t ® ¯ p j b)ga^ab*ð^a` z ë  q 7 ` ' ] ¡ é a ^ ) b  h ) i  q ) b * i j t Ö kÄ efe'è t  ÷ ï¯ ïï ¯3ï Þç \)]fi ÷ ¯ t çrp cÝ ]'\)t sî ØO±s ^ ØFëz^ M 1Ù )*` ) 0 b)^aqb)efga\)h Þ Ã)à b)qt i)ýktef\)h à b*þ hû ì ’Ã ª ÿ þ kh`7gaì`S] taj hO ` a g f e e ñ )ò Ý\c$t hÝ \)h9ß `Sëqg 8j à'\)Ügat h¡ª b)^ai)\*]'gaefks j d ãäÔåXÝ æEçHt çHÖ èÄ éŒêrë’ì åí^õt ç "!2# p t !3'ö ñ*% t j ÷ñ Ù ò ÷ Ù )&)[Ù t`S]fhb)hì*` úb*hì Ý Ö q Ä gaq Ö ga^ Å \)qe'` ‹Þ þ ]'b*ìgahi;ð`7eFïê`7`Sh ]f`S^at b)efga\)hd$b*h ì ® t j÷¥÷Bû ÷ ÷ ¯ t \zt4 b)hì98  `7] 5\)e'7ef` 6 j b*^aqt b)e'gahiëq`S]fga`Sd3\)h Ùñ )ÙKò þdfe't]fq [$gaef`7qð]fgai; `ïgae'k9b ÷ `Sdfdd'qÅ èè\)]':t e" ]'p `7^ab)e'ga\*hd ãä å æHçEçHèéŒêrë’ì åí Ä ö j÷B÷¥÷ ÄSt Ä ç t  ëzq`7]'égah< i ® Ùñ j ò ìÝ b)t ef["b;^aq\)]'df`7gaj hd Äi;q b)b)h ht ì Ý t ÙM\*d'dfs b)h t Ö ö^ef\)óîO]'ógahi–êrb)ëhé,ì ÷ îéŒê¯ ‹ ê E ç X ç ä Œ é r ê

ë  ôŒô ç M ò  jBj ¼ ¾XÞ j +1;  Ù )&û )*Ý ) ÷ ø Ö t ñHòò–ò j Ùñ ý ò 8 t 8ý]fb)`Kc` ý t ü_j q`S]fé t ` p b)^aqb)efga\)h;ef` Ä khgaëq`Sdxcí\)]^ab)]fi)`_ìb)e'b*ðb)d'`7d t

^õ"! õ1å î.é,êrë=# ä ç ì?>/‹åô å qh` d3

Holistic Twig Joins: Optimal XML Pattern Matching

XML employs a tree-structured data model, and, naturally,. XML queries specify .... patterns is that intermediate result sizes can get very large, even when the input and ... This validates the analytical results demonstrat- ing the I/O and CPU ...

395KB Sizes 2 Downloads 438 Views

Recommend Documents

Pattern Matching
basis of the degree of linkage between expected and achieved outcomes. In light of this ... al scaling, and cluster analysis as well as unique graphic portrayals of the results .... Pattern match of program design to job-related outcomes. Expected.

The Space Complexity of Processing XML Twig ... - Research at Google
and Google Haifa Engineering Center. Haifa, Israel. [email protected] ..... which we call basic twig queries. Many existing algo- rithms focus on this type ...

Tree Pattern Matching to Subset Matching in Linear ...
'U"cdc f f There are only O ( ns ) mar k ed nodes#I with the property that all nodes in either the left subtree ofBI or the right subtree ofBI are unmar k ed; this is ...

Eliminating Dependent Pattern Matching - Research at Google
so, we justify pattern matching as a language construct, in the style of ALF [13], without compromising ..... we first give our notion of data (and hence splitting) a firm basis. Definition 8 ...... Fred McBride. Computer Aided Manipulation of Symbol

Efficient randomized pattern-matching algorithms
the following string-matching problem: For a specified set. ((X(i), Y(i))) of pairs of strings, .... properties of our algorithms, even if the input data are chosen by an ...

biochemistry pattern matching .pdf
biochemistry pattern matching .pdf. biochemistry pattern matching .pdf. Open. Extract. Open with. Sign In. Main menu. Whoops! There was a problem previewing ...

Towards High-performance Pattern Matching on ... - Semantic Scholar
such as traffic classification, application identification and intrusion prevention. In this paper, we ..... OCTEON Software Developer Kit (Cavium SDK version 1.5):.

Optimization of Pattern Matching Algorithm for Memory Based ...
Dec 4, 2007 - widely adopted for string matching in [6][7][8][9][10] because the algorithm can ..... H. J. Jung, Z. K. Baker, and V. K. Prasanna. Performance of.

A Universal Online Caching Algorithm Based on Pattern Matching
We present a universal algorithm for the classical online problem of caching or ..... Call this the maximal suffix and let its length be Dn. 2. Take an α ..... Some Distribution-free Aspects of ... Compression Conference, 2000, 163-172. [21] J. Ziv 

q-Gram Tetrahedral Ratio (qTR) for Approximate Pattern Matching
possible to create a table of aliases for domain- specific alphanumeric values, however, it is unlikely that all possible errors could be anticipated in advance. 2.

Optimization of Pattern Matching Algorithm for Memory Based ...
Dec 4, 2007 - accommodate the increasing number of attack patterns and meet ... omitted. States 4 and 8 are the final states indicating the matching of string ...

person identification by retina pattern matching
Dec 30, 2004 - gait, facial thermo-gram, signature, face, palm print, hand geometry, iris and ..... [3] R. C. Gonzalez and R. E. Woods, Digital Image. Processing.

Towards High-performance Pattern Matching on ... - Semantic Scholar
1Department of Automation, Tsinghua University, Beijing, 100084, China. ... of-art 16-MIPS-core network processing platform and evaluated with real-life data ...

q-Gram Tetrahedral Ratio (qTR) for Approximate Pattern Matching
matching is to increase automated record linkage. Valid linkages will be determined by the user and should represent those “near matches” that the user.

Optimization of Pattern Matching Circuits for Regular ...
NFA approaches, a content matching server [9] was developed to automatically generate deterministic finite automatons (DFAs) .... construct an NFA for a given regular expression and used it to process text characters. ... [12] adopted a scalable, low

Parallel Approaches to the Pattern Matching Problem ...
the pattern's fingerprint (Kp(X) or Fp(X)), 3) computing all the fingerprints ... update fingerprints instead of computing from scratch: ... blocks (virtualized cores).

String Pattern Matching For High Speed in NIDS - IJRIT
scalability has been a dominant issue for implementation of NIDSes in hardware ... a preprocessing algorithm and a scalable, high-throughput, Memory-effi-.

Tree pattern matching in phylogenetic trees: automatic ...
Jan 13, 2005 - ... be installed on most operating systems (Windows, Unix/Linux and MacOS). ..... a core of genes sharing a common history. Genome Res., 12 ...

A New Point Pattern Matching Method for Palmprint
Email: [email protected]; [email protected]. Abstract—Point ..... new template minutiae set), we traverse all of the candidates pair 〈u, v〉 ∈ C × D.

Tree pattern matching in phylogenetic trees: automatic ...
Jan 13, 2005 - leaves. Then, this pattern is compared with all the phylogenetic trees of the database, to retrieve the families in which one or several occur- rences of this pattern are found. By specifying ad hoc patterns, it is therefore possible t

Optimization of Pattern Matching Algorithm for Memory ...
Dec 4, 2007 - [email protected]. ABSTRACT. Due to the ... To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior.

String Pattern Matching For High Speed in NIDS
They are critical net-work security tools that help protect high-speed computer ... Most hardware-based solutions for high-speed string matching in NIDS fall into ...

Efficient Pattern Matching Algorithm for Memory ...
matching approaches can no longer meet the high throughput of .... high speed. Sourdis et al. ... based on Bloom filter that provides Internet worm and virus.