Tree Languages Definable with One Quantifier Alternation
Mikołaj Bojańczyk (Warszawa) Luc Segoufin (Paris)
Tree Languages Definable with One Quantifier Alternation Mikoaj - - PowerPoint PPT Presentation
Tree Languages Definable with One Quantifier Alternation Mikoaj Bojaczyk (Warszawa) Luc Segoufin (Paris) e following problem is decidable: Input : A regular tree language L , given by a tree automaton. Question : Is L definable by a
Mikołaj Bojańczyk (Warszawa) Luc Segoufin (Paris)
e following problem is decidable: Input: A regular tree language L, given by a tree automaton. Question: Is L definable by a formula with quantifier prefix ∃* ∀* and also by a formula with quantifier prefix ∀*∃*
is talk is about understanding the expressive power of logics on words and trees. e logics involved can only define (some) regular languages.
is talk is about understanding the expressive power of logics on words and trees. e logics involved can only define (some) regular languages.
all regular languages languages definable in logic X
Understand logic X = give na algorithm to decide if a language L is definable in X
ere is a rich theory connecting logic, regular languages, and algebra.
ere is a rich theory connecting logic, regular languages, and algebra.
eorem. (Schützenberger, McNaughton/Papert) e following are equivalent for a word language: – L is definable in first-order logic – L is star-free – the syntactic monoid of L is group-free
ere is a rich theory connecting logic, regular languages, and algebra.
eorem. (Schützenberger, McNaughton/Papert) e following are equivalent for a word language: – L is definable in first-order logic – L is star-free – the syntactic monoid of L is group-free ... more results, including modulo quantifiers, the quantifier alternation hierarchy, etc.
ere is a rich theory connecting logic, regular languages, and algebra.
eorem. (Schützenberger, McNaughton/Papert) e following are equivalent for a word language: – L is definable in first-order logic – L is star-free – the syntactic monoid of L is group-free ... more results, including modulo quantifiers, the quantifier alternation hierarchy, etc. is paper is part of a program investigating the algebra- logic connection for trees. Eventually, we want to answer questions such as: – what is the expressive power of first-order logic on trees? – what is a tree group? – is there a Krohn-Rhodes decomposition theory?
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages: b* · a · {a,b,c}*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
∃x. a(x) ∧
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}* F
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}*
and also with prefix ∀* ∃*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}* ∀x∃y. c(x) ⇒
and also with prefix ∀* ∃*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}*
and also with prefix ∀* ∃*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}* b⇾ a⇾
and also with prefix ∀* ∃*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}*
and also with prefix ∀* ∃*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}* “go right to first a; go left to first c” fails “go right to first a” works
and also with prefix ∀* ∃*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}*
and also with prefix ∀* ∃*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}*
and also with prefix ∀* ∃*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}*
and also with prefix ∀* ∃* What about trees?
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}*
and also with prefix ∀* ∃*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}*
and also with prefix ∀* ∃*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}*
and also with prefix ∀* ∃*
eorem. (Etessami, Schützenberger, Schwentick, érien, Vollimer, Wilke) e following formalisms define the same word languages:
b* · a · {a,b,c}*
and also with prefix ∀* ∃*
and also with prefix ∀* ∃*
and also with prefix ∀* ∃*
and also with prefix ∀* ∃*
and also with prefix ∀* ∃*
and also with prefix ∀* ∃*
“two a’s”
and also with prefix ∀* ∃*
“two a’s”
and also with prefix ∀* ∃*
“all children of root have label a” “two a’s”
and also with prefix ∀* ∃*
“all children of root have label a” “two a’s” “three a’s”
and also with prefix ∀* ∃*
“all children of root have label a” “two a’s” “three a’s”
and also with prefix ∀* ∃*
“all children of root have label a” “two a’s” “three a’s”
We consider forest languages instead of tree languages (a forest is a sequence of trees)
a b a a a b a a b a b
We use first-order formulas to describe properties of forests. Variables quantify over nodes. Predicates allowed are: “x ancestor of y” “x lexicographically before y” “label of x is a”
We are interested in forest languages that can be defined in both ∀* ∃* and ∃* ∀*. We call this class ∆2.
We are interested in forest languages that can be defined in both ∀* ∃* and ∃* ∀*. We call this class ∆2. E.g. Trees ∈ ∆2
We are interested in forest languages that can be defined in both ∀* ∃* and ∃* ∀*. We call this class ∆2. E.g. Trees ∈ ∆2 every two nodes have a common ancestor ∀x∀y∃z. z ≤ x ∧ z ≤ y
∀* ∃* We are interested in forest languages that can be defined in both ∀* ∃* and ∃* ∀*. We call this class ∆2. E.g. Trees ∈ ∆2 every two nodes have a common ancestor ∀x∀y∃z. z ≤ x ∧ z ≤ y
∀* ∃* We are interested in forest languages that can be defined in both ∀* ∃* and ∃* ∀*. We call this class ∆2. E.g. Trees ∈ ∆2 ∃x∀y. x ≤ y some node is ancestor to every node every two nodes have a common ancestor ∀x∀y∃z. z ≤ x ∧ z ≤ y
∃* ∀* ∀* ∃* We are interested in forest languages that can be defined in both ∀* ∃* and ∃* ∀*. We call this class ∆2. E.g. Trees ∈ ∆2 ∃x∀y. x ≤ y some node is ancestor to every node every two nodes have a common ancestor ∀x∀y∃z. z ≤ x ∧ z ≤ y
Question: What forest languages can be defined in ∆2 ? Preferably, give an algorithm that decides if L ∈ ∆2.
a word w can have two encodings:
a b b a a b a
hor(w)
a b b a a b a
ver(w)
hor(L) and ver(L) are forest languages definable in ∆2.
Our characterization is stated as an identity. Intuitively, a forest language is definable in ∆2 iff it admits a certain pumping lemma.
A context is a forest with a hole in a leaf
a b a b a
A context is a forest with a hole in a leaf
a b a b a a a b b a b a a a b b a b
A context is a forest with a hole in a leaf
a b a b a a a b b a b a a a b b a b
Notion of piece for contexts. is a piece of
Myhill-Nerode congruence for a forest language L.
Myhill-Nerode congruence for a forest language L. Two contexts and are called L-equivalent if
Myhill-Nerode congruence for a forest language L. Two contexts and are called L-equivalent if for every context and every forest
Myhill-Nerode congruence for a forest language L. Two contexts and are called L-equivalent if for every context and every forest ∈ L iff ∈ L
Main eorem. A forest language is definable in ∆2 iff the following holds for all sufficiently large n
Main eorem. A forest language is definable in ∆2 iff the following holds for all sufficiently large n is a piece of if , then
Main eorem. A forest language is definable in ∆2 iff the following holds for all sufficiently large n is equivalent to is a piece of if , then
n times{ n times{ n times
n times
Main eorem. A forest language is definable in ∆2 iff the following holds for all sufficiently large n is equivalent to is a piece of if , then
n times{ n times{ n times
n times
is criterion is decidable. We also have variants of the theorem for unordered trees / forests.
Application. e set of binary trees (every node has zero or two children) is not definable in ∆2 is confused with
Big project: understand the expressive power of first-order logic on trees.
FO(≤) Big project: understand the expressive power of first-order logic on trees. regular languages
FO(≤) Σ1(≤) Π1(≤) Big project: understand the expressive power of first-order logic on trees. regular languages
FO(≤) Σ1(≤) Π1(≤) Big project: understand the expressive power of first-order logic on trees. regular languages Easy excercise
FO(≤) Σ1(≤) Π1(≤) Bool(Σ1(≤)) Big project: understand the expressive power of first-order logic on trees. regular languages Easy excercise
FO(≤) Σ1(≤) Π1(≤) Bool(Σ1(≤)) Big project: understand the expressive power of first-order logic on trees. regular languages BSS LICS Easy excercise
FO(≤) Σ1(≤) Π1(≤) Bool(Σ1(≤)) Σ2(≤) Π2(≤) ∆2(≤) Big project: understand the expressive power of first-order logic on trees. regular languages BSS LICS Easy excercise
FO(≤) Σ1(≤) Π1(≤) Bool(Σ1(≤)) Σ2(≤) Π2(≤) ∆2(≤) Big project: understand the expressive power of first-order logic on trees. regular languages BSS LICS this paper Easy excercise
FO(≤) Σ1(≤) Π1(≤) Bool(Σ1(≤)) Σ2(≤) Π2(≤) ∆2(≤) Big project: understand the expressive power of first-order logic on trees. regular languages =? =? =? BSS LICS this paper Easy excercise