Parse Tree OK ! Parse query OK ! Compil OK ! Run OK !
##### Query #####
/descendant::a[descendant::c[child::e and not descendant::f[not descendant::e]/descendant::g]]/descendant::b[child::g]
##### Doc #####
<#document>
#document>
##### ASTA #####
# Query states: { q₁ q₂ q₈ q₉ }
# Recognizing states: { q₀ q₃ q₄ q₅ q₆ q₇ }
# Selecting states: { q₁ }
# Bottom states: { q₂ q₈ q₉ }
# Top states: { q₉ }
# Queries transitions:
| q₁ ----F(b)---> ↓₁q₀
| q₂ ----Cof(ø)---> ↓₁q₂ ∨ ↓₂q₂ ∨ ↓₁q₁ ∨ ↓₂q₁
| q₈ ----F(a)---> (↓₁q₂ ∨ ↓₁q₁) ∧ ↓₁q₇
| q₈ ----Cof(ø)---> ↓₁q₈ ∨ ↓₂q₈
| q₉ ----Cof(ø)---> ↓₁q₈
# Recognizing transitions:
| q₀ ----F(g)---> ⊤ | q₀ ----Cof(ø)---> ↓₂q₀
| q₃ ----F(g)---> ⊤
| q₃ ----Cof(ø)---> ↓₁q₃ ∨ ↓₂q₃
| q₄ ----F(e)---> ⊤
| q₄ ----Cof(ø)---> ↓₁q₄ ∨ ↓₂q₄
| q₅ ----F(f)---> ̅↓̅₁̅q̅₄ ∧ ↓₁q₃
| q₅ ----Cof(ø)---> ↓₁q₅ ∨ ↓₂q₅
| q₆ ----F(e)---> ⊤ | q₆ ----Cof(ø)---> ↓₂q₆
| q₇ ----F(c)---> ↓₁q₆ ∧ ̅↓̅₁̅q̅₅
| q₇ ----Cof(ø)---> ↓₁q₇ ∨ ↓₂q₇
##### RUN #####
# Mapping:
| 14-->({ ø }, { ø }) | 16-->({ ø }, { ø })
| 21-->({ ø }, { ø }) | 24-->({ ø }, { ø })
| 25-->({ ø }, { ø }) | 34-->({ ø }, { ø })
| 35-->({ ø }, { ø })
# Doc:
<#document '0>
'2
'4
'6
'8
'10 '17 '19 '21
'22 '24
'25
'26 '28 '30 '32 '34
'35#document>