Sind reguläre Bäume immer Tief- oder Flachwurzler?
1. Sind regul¨are B¨aume immer
Tief- oder Flachwurzler?
Fragen und Ideen ¨uber die mittlere H¨ohe
von regul¨aren Baumsprachen
Raphael Reitzig @ FORMAT 2014
t¨uftelt mit Eric Noeth (Universit¨at Siegen)
FACHBEREICH
INFORMATIK
FACHBEREICH
INFORMATIK
&Algorithmen
Komplexität
2. Die Frage
Gibt es unendliche regul¨are Baumsprachen mit mittlerer H¨ohe
Hn ∈ Θ
√
n ∪ Θ(n) ?
3. Die Frage
Gibt es unendliche regul¨are Baumsprachen mit mittlerer H¨ohe
Hn ∈ Θ
√
n ∪ Θ(n) ?
≈ Syntaxb¨aume
von CFGs
4. Die Frage
Gibt es unendliche regul¨are Baumsprachen mit mittlerer H¨ohe
Hn ∈ Θ
√
n ∪ Θ(n) ?
≈ Syntaxb¨aume
von CFGs
Mitteln ¨uber alle
B¨aume mit n Knoten
5. Die Frage
Gibt es unendliche regul¨are Baumsprachen mit mittlerer H¨ohe
Hn ∈ Θ
√
n ∪ Θ(n) ?
≈ Syntaxb¨aume
von CFGs
Mitteln ¨uber alle
B¨aume mit n Knoten
z. B. Bin¨arb¨aume
und viele
”
simple varieties“
6. Die Frage
Gibt es unendliche regul¨are Baumsprachen mit mittlerer H¨ohe
Hn ∈ Θ
√
n ∪ Θ(n) ?
≈ Syntaxb¨aume
von CFGs
Mitteln ¨uber alle
B¨aume mit n Knoten
z. B. Bin¨arb¨aume
und viele
”
simple varieties“
z. B. lineare Liste u. ¨a.
7. Die Frage
Gibt es unendliche regul¨are Baumsprachen mit mittlerer H¨ohe
Hn ∈ Θ
√
n ∪ Θ(n) ?
≈ Syntaxb¨aume
von CFGs
Mitteln ¨uber alle
B¨aume mit n Knoten
z. B. Bin¨arb¨aume
und viele
”
simple varieties“
z. B. lineare Liste u. ¨a.
Nota bene: Random Permutation auf BSTs ist nicht uniform;
H¨ohenbalancierung ist nicht regul¨ar.
8. Warum die Frage?
B¨aume sind ein
”
nat¨urlicher“ Formalismus.
H¨ohe ist ein nat¨urlicher, interessanter Parameter.
9. Warum die Frage?
B¨aume sind ein
”
nat¨urlicher“ Formalismus.
H¨ohe ist ein nat¨urlicher, interessanter Parameter.
Regul¨are B¨aume verallgemeinern viele
”
klassische“ Familien.
10. Warum die Frage?
B¨aume sind ein
”
nat¨urlicher“ Formalismus.
H¨ohe ist ein nat¨urlicher, interessanter Parameter.
Regul¨are B¨aume verallgemeinern viele
”
klassische“ Familien.
Mittlere H¨ohe bisher nur f¨ur Spezialf¨alle bekannt.
11. Warum die Frage?
B¨aume sind ein
”
nat¨urlicher“ Formalismus.
H¨ohe ist ein nat¨urlicher, interessanter Parameter.
Regul¨are B¨aume verallgemeinern viele
”
klassische“ Familien.
Mittlere H¨ohe bisher nur f¨ur Spezialf¨alle bekannt.
Enger Zusammenhang zur mittleren Kompressionsg¨ute von
B¨aumen via DAGs.
14. Regul¨are Baumgrammatiken
Eine Baumgrammatik G = (S, N, Σ, R) ist regul¨ar, wenn alle
Regeln r ∈ R eine dieser Formen haben:
A →
a
A1
. . . Ak
oder A → a
Ableitungen und erzeugte (Baum-)Sprache L = L(G) wie ¨ublich.
15. Regul¨are Baumgrammatiken
Eine Baumgrammatik G = (S, N, Σ, R) ist regul¨ar, wenn alle
Regeln r ∈ R eine dieser Formen haben:
A →
a
A1
. . . Ak
oder A → a
normalisierte
Ableitungen und erzeugte (Baum-)Sprache L = L(G) wie ¨ublich.
Reduziertheit, Normalform und Eindeutigkeit gibt es o. B. d. A.
17. Beispiel: Bin¨arb¨aume
Die Grammatik G = (S, {S}, {◦}, R) mit
S →
◦
S S
◦
erzeugt die Menge aller vollen/erweiterten Bin¨arb¨aume.
S ⇒
◦
S S
S
⇒
◦
◦
S S
S ⇒
◦
◦
S ◦
S ⇒
◦
◦
S ◦
◦ ⇒
◦
◦
◦ ◦
◦
18. Beispiel: Bin¨arb¨aume
Die Grammatik G = (S, {S}, {◦}, R) mit
S →
◦
S S
◦
erzeugt die Menge aller vollen/erweiterten Bin¨arb¨aume.
S ⇒
◦
S S
S
⇒
◦
◦
S S
S ⇒
◦
◦
S ◦
S ⇒
◦
◦
S ◦
◦ ⇒
◦
◦
◦ ◦
◦
Nota bene: L(G) = Lsg B = Σ × B × B + Σ
23. TREG vs. CFDT
TREG CFDT = ∅:
S →
s
A B
A →
c
a
B →
c
b
L =
s
c
a
c
b
24. TREG vs. CFDT
TREG CFDT = ∅:
S →
s
A B
A →
c
a
B →
c
b
L =
s
c
a
c
b
s → cc c → a | b
25. TREG vs. CFDT
TREG CFDT = ∅:
S →
s
A B
A →
c
a
B →
c
b
L =
s
c
a
c
b
s → cc c → a | b
|L | = 4
26. TREG vs. CFDT
TREG CFDT = ∅:
S →
s
A B
A →
c
a
B →
c
b
L =
s
c
a
c
b
s → cc c → a | b
|L | = 4
Macht das hier einen Unterschied?
28. Mehr Beispiele
Allgemeiner: jede simple variety SVΩ von B¨aumen gem¨aß
T = T × SEQΩ(T )
ist regul¨ar! Solange 0 ∈ Ω und |Ω| < ∞.
29. Mehr Beispiele
Allgemeiner: jede simple variety SVΩ von B¨aumen gem¨aß
T = T × SEQΩ(T )
ist regul¨ar! Solange 0 ∈ Ω und |Ω| < ∞.
Beweis:
S →
a
S . . . S
k ×
⇐⇒ a ∈ T ∧ k ∈ Ω
30. Mehr Beispiele
Allgemeiner: jede simple variety SVΩ von B¨aumen gem¨aß
T = T × SEQΩ(T )
ist regul¨ar! Solange 0 ∈ Ω und |Ω| < ∞.
Beweis:
S →
a
S . . . S
k ×
⇐⇒ a ∈ T ∧ k ∈ Ω
Wissen: hier ist Hn ∈ Θ(
√
n) ∪ Θ(n).
32. Probleme
Beweis zu SV nicht direkt ¨ubertragbar.
H¨ohe ist immer unangenehm – keine additive Gr¨oße!
33. Probleme
Beweis zu SV nicht direkt ¨ubertragbar.
H¨ohe ist immer unangenehm – keine additive Gr¨oße!
Nichtterminale k¨onnen sich beliebig vermischen
– wie ihre Beitr¨age zur H¨ohe isolieren?
41. Idee
Wir beobachten:
Die Sprache der A-Minoren ist stets eine
”
smooth simple
variety“ SVA.
max
A∈N
HA(t) ≤ H(t) ≤
A∈N
HA(t)
=⇒
1
|N|
· max
A∈N
HA,n ≤ Hn ≤
A∈N
HA,n.
42. Idee
Wir beobachten:
Die Sprache der A-Minoren ist stets eine
”
smooth simple
variety“ SVA.
max
A∈N
HA(t) ≤ H(t) ≤
A∈N
HA(t)
=⇒
1
|N|
· max
A∈N
HA,n ≤ Hn ≤
A∈N
HA,n.
A∈N
HA,n ∈ Θ
1
|N|
· max
A∈N
HA,n f¨ur n → ∞, da N endlich.
43. Idee
Wir beobachten:
Die Sprache der A-Minoren ist stets eine
”
smooth simple
variety“ SVA.
max
A∈N
HA(t) ≤ H(t) ≤
A∈N
HA(t)
=⇒
1
|N|
· max
A∈N
HA,n ≤ Hn ≤
A∈N
HA,n.
A∈N
HA,n ∈ Θ
1
|N|
· max
A∈N
HA,n f¨ur n → ∞, da N endlich.
Also ist das Problem gel¨ost!
44. Idee
Wir beobachten:
Die Sprache der A-Minoren ist stets eine
”
smooth simple
variety“ SVA.
max
A∈N
HA(t) ≤ H(t) ≤
A∈N
HA(t)
=⇒
1
|N|
· max
A∈N
HA,n ≤ Hn ≤
A∈N
HA,n.
A∈N
HA,n ∈ Θ
1
|N|
· max
A∈N
HA,n f¨ur n → ∞, da N endlich.
Also ist das Problem gel¨ost?
45. Probleme mit der Idee
Verschiedene
”
Mittel“ bei SVA und HA
– uniform ¨uber SVA = uniform ¨uber L(G)!
S = A →
a
A A
a
A
a
B
B → a | b
46. Probleme mit der Idee
Verschiedene
”
Mittel“ bei SVA und HA
– uniform ¨uber SVA = uniform ¨uber L(G)!
S = A →
a
A A
a
A
a
B
B → a | b
Nicht jede Minorensprache dominiert:
S →
s
A B
A →
Σ1
A A
Σ1 B →
Σ2
B
Σ2
– H¨ohe in Θ
√
n oder Θ(n)?
47. Probleme mit der Idee
Verschiedene
”
Mittel“ bei SVA und HA
– uniform ¨uber SVA = uniform ¨uber L(G)!
S = A →
a
A A
a
A
a
B
B → a | b
Nicht jede Minorensprache dominiert:
S →
s
A B
A →
Σ1
A A
Σ1 B →
Σ2
B
Σ2
– H¨ohe in Θ
√
n oder Θ(n)?
Und selbst wenn:
S = A →
a
A A
a
B
B →
b
B
b
49. Ausflug: Knotenzahlen
Den H¨ohenbeitrag von A h¨angt von mehreren Gr¨oßen ab:
HA,n ←→ HA ◦ nA ◦ . . .
– lohnt es sich, nA zu untersuchen?
nA =
An
WA,n
=
# A-Knoten in Ln
# A-Minorenb¨aume in Ln
50. Ausflug: Knotenzahlen
Den H¨ohenbeitrag von A h¨angt von mehreren Gr¨oßen ab:
HA,n ←→ HA ◦ nA ◦ . . .
– lohnt es sich, nA zu untersuchen?
nA =
An
WA,n
=
# A-Knoten in Ln
# A-Minorenb¨aume in Ln
Damit k¨onnen wir umgehen!
59. Ausflug: Knotenzahlen
Beispiel
S = A →
a
A A
a
B
B →
b
B
b
S(1, 1, z) =
1 − z − (1 − z)(1 − 2z)(1 + z + 2z2)
2z(1 − z)
A(1, 1, z) =
2z2
(1 − 2z)(1 + z + 2z2) + (1 − z)(1 − 2z)(1 + z + 2z2)
B(1, 1, z) =
z2
(1 − z) · (1 − z)(1 − 2z)(1 + z + 2z2)
65. Ausflug: Knotenzahlen
Beispiel
S = A →
a
A A
a
B
B →
b
B
b
An ∼ 1/2 · n WA,n = 1 nA ∼ 1/2 · n
Bn ∼ 1/2 · n WB,n ∼ 1/4 · n nB ∼ 2
HA,n ∈ Θ
√
n und HB,n ∈ O(1)
mit weiteren Argumenten
66. Ausflug: Knotenzahlen
Beispiel
S = A →
a
A A
a
B
B →
b
B
b
An ∼ 1/2 · n WA,n = 1 nA ∼ 1/2 · n
Bn ∼ 1/2 · n WB,n ∼ 1/4 · n nB ∼ 2
HA,n ∈ Θ
√
n und HB,n ∈ O(1)
Hn ∈ Θ
√
n
mit weiteren Argumenten
70. Ausflug: Knotenzahlen
M¨ussen unangenehme F¨alle ausschließen (oder finden):
HA ∼
√
n ∧ nA ∼ n HA,n ∼ n1/2
HB ∼ n4/5
∧ nB ∼ n3/4
HB,n ∼ n3/5
Was f¨ur HA, nA und Verkn¨upfungen derer kann es geben?
73. Ausflug: Knotenzahlen
Wissen von Banderier/Drmota (2014):
|Ln| ∼ α · βn
· nγ
f¨ur alle γ ∈ {−1 − 2−k
}
k≥1
∪ {m · 2−k
− 1}
k≥0,m≥1
m¨oglich – also
”
beliebig“ unangenehm!
Aber ist An vielleicht
”
passend“ unangenehm und An
”
h¨ubsch“?
74. Ausflug: Knotenzahlen
Wissen von Banderier/Drmota (2014):
|Ln| ∼ α · βn
· nγ
f¨ur alle γ ∈ {−1 − 2−k
}
k≥1
∪ {m · 2−k
− 1}
k≥0,m≥1
m¨oglich – also
”
beliebig“ unangenehm!
Aber ist An vielleicht
”
passend“ unangenehm und An
”
h¨ubsch“?
Andererseits: was sind nA und nB in
S →
s
A B
,
wenn
|LA,n| ∼ . . . · nγ1
und |LB,n| ∼ . . . · nγ2
?
76. Protoidee: Simple Varieties erweitern
Simple Variety SVΩ ist charakterisiert durch
φΩ(z) =
k∈Ω
zk
.
K¨onnen wir die Beweise sinnvoll etwa auf
φn(z) =
k≥0
# Knoten in Ln mit Grad k
n · Tn
· zk
¨ubertragen? Was passiert dann f¨ur n → ∞?
79. Protoidee: Symbolische Methode f¨ur B¨aume
K¨onnen wir eine
Basis von Sprachen und
Operationen
finden, die TREG erzeugen?
Es gibt
”
regular tree expressions“ in TATA!
80. Protoidee: Symbolische Methode f¨ur B¨aume
K¨onnen wir eine
Basis von Sprachen und
Operationen
finden, die TREG erzeugen?
Es gibt
”
regular tree expressions“ in TATA!
K¨onnten wir dann die symbolische Methode darauf erweitern?
81. Protoidee: Symbolische Methode f¨ur B¨aume
K¨onnen wir eine
Basis von Sprachen und
Operationen
finden, die TREG erzeugen?
Es gibt
”
regular tree expressions“ in TATA!
K¨onnten wir dann die symbolische Methode darauf erweitern?
Welchen Effekt h¨atten diese Operationen auf die mittlere H¨ohe?