iván szabolcs szegedi tudományegyetem számítástudomány ...€¦ · lncs vol. 3404, p....

46
Logikák véges fákon Iván Szabolcs Szegedi Tudományegyetem Számítástudomány Alapjai Tanszék

Upload: others

Post on 15-Nov-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Logikák véges fákon

Iván Szabolcs

Szegedi Tudományegyetem

Számítástudomány Alapjai Tanszék

Page 2: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Fák

• Σ véges rangolt ábécé

h

f

g

a a

a b

f

sorrend számít

gyökér

címkék1/csúcs

magasság

Σ2={f,g}Σ1={h}Σ0={a,b}

nincs változó

Page 3: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Fanyelvek

• Legyen Σ2={∧∧∧∧,∨∨∨∨} és Σ0={0,1}

∨∨∨∨

10

1

∧∧∧∧

∨∨∨∨

∧∧∧∧

10

…és a többi 1 értékő fa

Page 4: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Faautomaták

• Faautomata: egy Σ-algebra, elemeinek egy kitüntetett F „végállapot”-halmazával

• Felismer egy fát, ha azt kiértékelve az eredmény F-beli

• Az L fanyelv reguláris, ha van hozzáfaautomata

Page 5: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Faautomata példa

• Megint az 1 értékő fák:

111

100

10∨∨∨∨

101

000

10 ∧ ∧ ∧ ∧ 0→ 01→ 1

F={1}

Page 6: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Párhuzam: szavak

• A szavak „valójában” fák

• A klasszikus automaták speciális faautomaták

b

a

a

λ

aab ≡

Σ0 = {λ}, értéke q0Σ1: az input ábécé,megfelel az átmeneteknek

Page 7: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Lekérdezések

• n-változós lekérdezés (query): fákhoz n-változós relációkat rendel– A reláció Vn egy részhalmaza; itt V a fa

csúcsainak halmaza

• 0-változós (boolean) lekérdezés: minden fára vagy igaz, vagy hamis– Vagyis fanyelv

– Automata csak ilyet tud

Page 8: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Lekérdezések II.

• 1-változós lekérdezés: a fa bizonyos csúcsait adja vissza– Ilyenek az XML Xpath kérései

– Manapság nagy rájuk az igény

• 2-változós lekérdezés: csúcspárok– Mint pl. a „gyereke” tranzitív lezártja

Page 9: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Logikák

Formalizmusok lekérdezésekre

• Változót tartalmazó logikák– MSO

– FO és variánsai

• Változómentes logikák– CTL* és fragmensei

Page 10: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Monadic Second Order

Szintaxis:

• F → pa(x) | x <ch y | x <sb y | x∈ X | x = y

• F → F∨F | ¬F | ∃x.F | ∃X.F

Szemantika:

• x egy csúcs

• X csúcsok egy halmaza

• pa(x): x címkéje a

• <ch : gyerek <sb : jobbtestvér

Page 11: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

MSO példák

ch

ch

x y:

X.(x X ( z.z X ( w.z w (w X) (w y))))

+<

∃ ∈ ∧ ∀ ∈ → ∃ < ∧ ∈ ∨ =

chRoot(x) : y. (y x)∀ ¬ <

Sıt: ∃X.( ∀x. x ∈ X ↔ (

p1(x) ∨p∧(x) ∧ (∀y.x<chy → y∈X) ∨p∨(x) ∧ (∃y.x<chy ∧ y∈X)))

∧ ∀x. Root(x) → x ∈ X )

Régi ismerıs

chLeaf (x) : y. (x y)∀ ¬ <

Page 12: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

A gyanú helyes

• Minden reguláris fanyelvhez van boolean MSO lekérdezés– Sıt ∃MSO

• Minden boolean MSO lekérdezés reguláris fanyelvet ad meg– Konstruktív, de nem elemi!

Page 13: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Párhuzam: szavak

• „A következı három nyelvosztály megegyezik:– A reguláris nyelveké

– Az MSO mondattal kifejezhetıké

– Az ∃MSO mondattal kifejezhetıké”

• Ez tehát fákra is így van– a bizonyítás is analóg

Page 14: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Az XML EDTD modellje

• Az XML DTD-k felfoghatók egy-egy módosított CFG-ként:– Olyan (Σ’,S,P,h) négyes, ahol a P átírási

halmaz a → e alakú szabályokból áll– itt a ∈ Σ’, e pedig Σ’ fölötti reguláris kifejezés– h: (Σ’)*→ (Σ)* homomorfizmus (technikai

okok miatt)– De itt az ábécé nem rangolt– EDTD: Extended DTD, zártság miatt kell

Page 15: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Példa

• Könyvespolc → (Könyv + Folyóirat)+

• Könyv → Elılap Lap* Hátlap

• Folyóirat → Lap+

• többi → λ

• h most id

Polc

Könyv Könyv

Elılap ElılapHátlap ElılapLap

Page 16: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

EDTD ⊆ MSO

• Minden EDTD-hez készíthetı MSO formula– Automatához hasonló módon

– Elıször címkénként szétparticionáljuk

– Azután a gyerekek listáján végighúzunk egy megfelelı stringautomatát (ez megy MSO-val)

Page 17: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Nincs új a nap alatt

• Az MSO mondatokkal definiálható fanyelvek osztálya egybeesik az EDTD-veldefiniálható (nem-rangolt) fanyelvekével

Page 18: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Csakhogy…

• Egy F MSO mondatra és egy T fára azt eldönteni, hogy T modellje-e F-nek, nagyon nehéz– Vagy nincs olyan elemi f függvény, amire

O(f(|F|)|T|) idı elég lenne…– …vagy P=NP.

• Rögzített F-re egyébként elég O(|T|) idı• Kompromisszum: ETL (Efficient TL)

Page 19: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Efficient Tree Logic

• Cél: MSO-val megegyezı kifejezıerı, jobb model-checking korláttal

Szintaxis (részletek is mindjárt):*

a ch ch

*ch ch

*ch

F p (x) | x y | x y | x X | x y

F F F | F

F y.(x y F) | y.(x y F)

F X.(( y.y X x y) F)

F e (x, y) | e (x,X)↓ →

→ < < ∈ =

→ ∨ ¬

→∃ < ∧ ∃ < ∧

→ ∃ ∀ ∈ → < ∧

„ırök”

Page 20: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

ETL vs. MSO

• Egyrészt kvantifikálni csak ırzött(guarded) módon engedélyezett

• Másrészt nem használunk <sb relációt• Harmadrészt vannak az útformulák:

– e ↓(x,y): vertikális útformula– e→(x,X): horizontális útformula

• Egyéb szintaktikus megszorítások is vannak (a szabad változók halmazára)

Page 21: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Vertikális útformulák

• Legyenek F1(x,y), F2(x,y), …, Fk(x,y) ETL formulák és e egy reguláris kifejezés {1,…,k} fölött

x0

x1

x2

xn

Fi1(x0,x1)

Fi2(x1,x2)

Fin(xn-1,xn)

és i1i2…in ∈ e

e ↓(x0,xn)

Page 22: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Horizontális útformulák

• F1(x,X), …, Fk(x,X) ETL formulák, e egy reguláris kifejezés {1,…,k} fölött

x

Fi1 Fi2 Fin

és i1i2…in ∈ e

e→(x,X)

Page 23: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

ETL ⊆ MSO

• Egyedül a kétféle útformula szorul magyarázatra

• De azokban <-utak regularitását és (indukció szerint) MSO teszteket kérjük

• Vagyis végig lehet húzni rajtuk egy megfelelı automatát (ami pedig MSO stringeken)

Page 24: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

MSO ⊆ ETL

• A (regularitás miatt létezı) faautomatából indulva már majdnem ETL formulát is kapunk

• Csak annyi a gond, hogy sok lesz a „párhuzamosan szabad” halmazváltozó

• Ezeket trükkösen lecserélhetjük egyetlen halmazváltozóra– A halmaz elemei olyan csúcsok, amik körüli adott

(2N+1) sugarú környezetek lefedik a fát

– Ezekre a környezetekre útformulákat alkalmazunk

Page 25: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

ETL model checking

• ETLo: csak olyan ETL formulák, amik diszjunktív normálformájúk– Nyilván ETL ekvivalens ETLo-val

• Model-checking bonyolultság ezekre:– ETLo-ra 2O(|F|)|T|– ETL-re emiatt duplán exponenciális már elég– Nem ismert, hogy ez éles-e

• És: ETL és MSO kifejezıereje megegyezik a boolean és unáris lekérdezéseken!

Page 26: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

First Order Logic

Szintaxis

• F → pa(x) | x <ch y | x <sb y | x = y

• F→ F ∨F | ¬F | ∃x.F

Szemantika

• MSO megfelelı része

Page 27: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

FO vs. FO(<)

• Láttuk, hogy MSO-ban kifejezhetı <-bıl <* és viszont

• FO-ban azonban csak <*-ból fejezhetı ki <, a másik irány nem oldható meg

• FO(<) az az elsırendő logika, ahol < helyett <* az alapformulák eleme

• FO(<) ezért kifejezıbb, mint FO

Page 28: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

A szavak esete

• Szavak esetében tudjuk, hogy az FO(<) definiálhatósági problémája eldönthetı– Az L string nyelv pontosan akkor definiálható

FO(<)-ben, ha szintaktikus monoidja aperiodikus

– Egyébként FO(<) stringekre ekvivalens az LTL logikával (ezt késıbb tárgyaljuk)

– Sıt: ez egybeesik a csillagmentességgel is– PSPACE-teljes kérdés

Page 29: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Különbség

• Fákra jelenleg nem ismert, hogy FO(<) definiálhatósági problémája eldönthetı-e vagy sem– Annyit tudunk, hogy FO(<) bináris fákra

ekvivalens CTL*-gal (amit késıbb tárgyalunk)

– Itt FO(<) gyengébb, mint a csillagmentesség

Page 30: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

FO(<) és MSO között: MPL

MPL: Monadic Path Logic• Szintaxisa ugyanaz, mint MSO-é, a

relációk tranzitív változatával• Szemantikája azonban eltér: az X változók

csak olyan csúcshalmazokat vehetnek fel értékül, melyek egy teljes gyökér-levél utathatároznak meg

• Ez hasonlít a temporális útformulákra

Page 31: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

FO(<) és MSO között?

• Az világos, hogy minden FO(<)-formulához létezik ekvivalens MPL formula

• Visszafelé is van átalakítás:

• Tehát MPL nem más, mint FO(<)

*ch

X.F t.(Leaf (t) F ')

x X x t

∃ ∃ ∧

∈ <

a

a

Page 32: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Lokális küszöbtesztelés

• Adott d és k egészekre és T1, T2 fákra fennáll a T1 ≡d,k T2 reláció, ha véve bármely legfeljebb d magasságú t „fát”:– mindkét fában ugyanannyiszor fordul elı t – vagy mindkét fában legalább k-szor

• Az L fanyelv lokálisan küszöbtesztelhetı(LTT - locally threshold testable), ha valamely d-re és k-ra ≡d,k szaturálja

Page 33: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

LTT példa

• Kedvenc nyelvünk pl. nem LTT:

0∨∨∨∨

∧∧∧∧

10

∨∨∨∨ 0

∨∨∨∨0

∨∨∨∨0

∨∨∨∨

0∨∨∨∨

00

∨∨∨∨ 0

∨∨∨∨0

∨∨∨∨0

∨∨∨∨1∧∧∧∧

0

∨∨∨∨

teszt-mélység

Page 34: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

FO és LTT?

• Az LTT nyelvek FO-definiálhatóak– FO-ban tudunk beszélni véges fákról és „max k különbözı” ill. „legalább k különbözı” formulákat is tehetünk

• Az FO-definiálható nyelvek LTT nyelvek– Belátható, hogy ha két csúcs távolsága a

Gaifman-gráfban több, mint 3k, akkor legalább k további változó kell ıket összekötni

Page 35: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

FO és LTT: párhuzam

• Stringekre is: egy fanyelv pontosan akkor definiálható FO-ban, ha lokálisan küszöbtesztelhetı

• Ez még önmagában nem ad eldöntési algoritmust

Page 36: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

FO (azaz LTT) eldöntése

• T0: fák; T1: contextek; T2: két változó

• e ∈ T1 idempotens, ha eA = eeA

• Széltében csere (ilyen stringeken nincs):

e e e e

Page 37: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Széltében csere

• Ha L FO-definiálható, akkor invariáns a széltében cserére

e e e ee e

e

e

e

e

e

e

e e

e

e

e

e

e

e

lokalitásidempotens idempotens

Page 38: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Hosszanti csere

e

f

e

f

e

f

e

f

Erre is invariáns

polcolhatunk e-t és f-et

ismét

Page 39: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Aperiodicitás

• Létezik n, amire

t

t

t

t

:

t

t

t

t

:tn

n+1

LTT miatt ez is stimmel

Page 40: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Másik irány

• Vagyis, ezek a tulajdonságok szükségesekaz FO-definiálhatósághoz

• Belátjuk, hogy elégségesek is

Page 41: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Fa felbontása

• Elég nagy fában biztos van idempotens– Ha N állapot van, akkor NN magas fa már elég nagy

• Így a nagy fák szétszedhetık blokkokra, amiket idempotensek kötnek össze

• Alkalmazva a három ekvivalenciát mint átírást, két „blokk-fa” átvihetı egymásba, ha az olyan blokkjaik száma megegyezik, amikbıl egyiküknek kevesebb van, mint n

• Végeredmény LTT lesz → kész vagyunk

Page 42: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

FO+TC

• FO és egyfajta tranzitív lezárás operátor• Szintaxis ugyanaz, mint FO-é, plusz:F → [TCx,y F(x,y)](s,t)Itt a négy változóvektor k-k darab szabad

változóból áll; ennek szabad változói (s,t)Szemantika:

akkor igaz, ha (s,t) benne van az F által megadott reláció tranzitív lezártjában

Page 43: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

FO+TC példa

• FO(<)-ben:

∃y.(x <ch* y ∧ pa(y))

• FO+TC-ben:

∃y.( [TCu,v( u <ch v)](x,y) ∧ pa(y))

Innen látszik, hogy FO(<) ⊆ FO+TC

Page 44: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

FO+TC vajon mi

• Az FO+TC-ben kifejezhetı lekérdezések osztálya egybeesik az NL-ben kiszámítható lekérdezésekével

• Ha determinisztikus tranzitív lezárásunk van, arra

FO+dTC = dPTW

Page 45: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

FO+TC

• FO+posTC: olyan FO+TC, amiben TC csak páros sok negáció hatáskörében áll

FO+TC = FO+posTC = PTW

Page 46: Iván Szabolcs Szegedi Tudományegyetem Számítástudomány ...€¦ · LNCS vol. 3404, p. 327-339, 2005 • Geerts and Kuijpers: Deciding termination of queryevaluation in transitive-closure

Vége az elsı résznek

• Benedikt and Segoufin: Regular tree languages definable in FOLNCS vol. 3404, p. 327-339, 2005

• Geerts and Kuijpers: Deciding termination of query evaluation in transitive-closure logics for constraint databases

LNCS vol. 2572, pp. 190-260, 2003.• Libkin: Logics for unranked trees – an overview

LNCS vol. 3580, p. 35-50, 2005.• Neven: Automata, logic, and XML

Invited talk at CSL 2002. • Neven and Schwentick: Expressive and efficient pattern languages for tree-structured

data

PODS 2000: p. 145-156, 2000.• Rabinovich: Expressive power of temporal logics

LNCS vol 2421, p. 57-75, 2002.• Walukiewicz: Automata and logic• Walukiewicz: Monadic second order logic on tree-like structures

TCS vol. 275, p. 311-346, 2002.