Die Sternhöhe ist ein Begriff aus der Theoretischen Informatik. Sie gibt zu einem regulären Ausdruck das Maximum aller verschachtelten Anwendungen des Kleene-Stern-Operators an.

Definition

Die Sternhöhe sh ⁡ ( r ) {\displaystyle \operatorname {sh} (r)} eines regulären Ausdrucks r über einem endlichen Alphabet A ist rekursiv definiert als

sh ⁡ ( ∅ ) = 0 {\displaystyle \operatorname {sh} (\emptyset )=0}
sh ⁡ ( ε ) = 0 {\displaystyle \operatorname {sh} (\varepsilon )=0}
sh ⁡ ( x ) = 0 ∀ x ∈ A {\displaystyle \operatorname {sh} (x)=0\quad \forall x\in A}
sh ⁡ ( v ⋅ w ) = max ( sh ⁡ ( v ) , sh ⁡ ( w ) ) {\displaystyle \operatorname {sh} (v\cdot w)=\max(\operatorname {sh} (v),\operatorname {sh} (w))} für alle regulären Ausdrücke v , w {\displaystyle v,w}
sh ⁡ ( v | w ) = max ( sh ⁡ ( v ) , sh ⁡ ( w ) ) {\displaystyle \operatorname {sh} (v|w)=\max(\operatorname {sh} (v),\operatorname {sh} (w))} für alle regulären Ausdrücke v , w {\displaystyle v,w}
sh ⁡ ( v ⋆ ) = sh ⁡ ( v ) 1 {\displaystyle \operatorname {sh} (v^{\star })=\operatorname {sh} (v) 1} für alle regulären Ausdrücke v {\displaystyle v}

Darauf aufbauend ist die Sternhöhe sh ⁡ ( L ) {\displaystyle \operatorname {sh} (L)} einer regulären Sprache L {\displaystyle L} definiert als das Minimum aller Sternhöhen n {\displaystyle n} , für das ein regulärer Ausdruck r ∈ L {\displaystyle r\in L} mit sh ⁡ ( r ) = n {\displaystyle \operatorname {sh} (r)=n} existiert.

Sternhöhenproblem

Das Sternhöhenproblem behandelt die Frage, ob es eine maximale Sternhöhe gibt, also ob ein n {\displaystyle n} mit sh ⁡ ( L ) ≤ n {\displaystyle \operatorname {sh} (L)\leq n} für alle regulären Sprachen L {\displaystyle L} über einem festen Alphabet A {\displaystyle A} existiert. Falls ein solches n {\displaystyle n} nicht existiert, lässt sich dann die Sternhöhe einer regulären Sprache algorithmisch bestimmen?

Beide Fragen sind mittlerweile beantwortet. Im Jahre 1963 konnte L. C. Eggan zeigen, dass ein solches n {\displaystyle n} nicht existiert, indem er für jedes n ≥ 0 {\displaystyle n\geq 0} eine Sprache L n {\displaystyle L_{n}} mit sh ⁡ ( L ) = n {\displaystyle \operatorname {sh} (L)=n} konstruierte. Kosaburo Hashiguchi stellte 1988 einen Algorithmus vor, mit dem sich zu einer gegebenen regulären Sprache L {\displaystyle L} die Sternhöhe sh ⁡ ( L ) {\displaystyle \operatorname {sh} (L)} bestimmen lässt.

Verallgemeinerte Sternhöhe

Die verallgemeinerte (oder auch generalisierte) Sternhöhe gsh ⁡ ( r ) {\displaystyle \operatorname {gsh} (r)} ist analog zur Sternhöhe definiert, allerdings nicht über regulären Ausdrücken, sondern über verallgemeinerten regulären Ausdrücken, welche zusätzlich zu den normalen Operatoren direkt die Komplementierung ( ¬ {\displaystyle \neg } ) erlauben. Es gilt also:

gsh ⁡ ( ∅ ) = 0 {\displaystyle \operatorname {gsh} (\emptyset )=0}
gsh ⁡ ( ε ) = 0 {\displaystyle \operatorname {gsh} (\varepsilon )=0}
gsh ⁡ ( x ) = 0 ∀ x ∈ A {\displaystyle \operatorname {gsh} (x)=0\quad \forall x\in A}
gsh ⁡ ( ¬ v ) = gsh ⁡ ( v ) {\displaystyle \operatorname {gsh} (\lnot v)=\operatorname {gsh} (v)} für alle verallgemeinerten regulären Ausdrücke v {\displaystyle v}
gsh ⁡ ( v ⋅ w ) = max ( gsh ⁡ ( v ) , gsh ⁡ ( w ) ) {\displaystyle \operatorname {gsh} (v\cdot w)=\max(\operatorname {gsh} (v),\operatorname {gsh} (w))} für alle verallgemeinerten regulären Ausdrücke v , w {\displaystyle v,w}
gsh ⁡ ( v | w ) = max ( gsh ⁡ ( v ) , gsh ⁡ ( w ) ) {\displaystyle \operatorname {gsh} (v|w)=\max(\operatorname {gsh} (v),\operatorname {gsh} (w))} für alle verallgemeinerten regulären Ausdrücke v , w {\displaystyle v,w}
gsh ⁡ ( v ∩ w ) = max ( gsh ⁡ ( v ) , gsh ⁡ ( w ) ) {\displaystyle \operatorname {gsh} (v\cap w)=\max(\operatorname {gsh} (v),\operatorname {gsh} (w))} für alle verallgemeinerten regulären Ausdrücke v , w {\displaystyle v,w}
gsh ⁡ ( v ⋆ ) = gsh ⁡ ( v ) 1 {\displaystyle \operatorname {gsh} (v^{\star })=\operatorname {gsh} (v) 1} für alle verallgemeinerten regulären Ausdrücke v {\displaystyle v}

Analog ist die verallgemeinerte Sternhöhe gsh ⁡ ( L ) {\displaystyle \operatorname {gsh} (L)} einer regulären Sprache L {\displaystyle L} definiert. Beispielsweise hat die Sprache L ( Σ ∗ ) {\displaystyle L(\Sigma ^{*})} die Sternhöhe 1, während dieselbe Sprache wegen L ( Σ ∗ ) = L ( ¬ ∅ ) {\displaystyle L(\Sigma ^{*})=L(\neg \emptyset )} die verallgemeinerte Sternhöhe 0 hat.

Verallgemeinertes Sternhöhenproblem

Das verallgemeinerte Sternhöhenproblem ist analog zum Sternhöhenproblem definiert, aber im Gegensatz zu diesem noch unbeantwortet. Zwar gibt es reguläre Sprachen L {\displaystyle L} mit gsh ⁡ ( L ) = 1 {\displaystyle \operatorname {gsh} (L)=1} , zum Beispiel die Sprache L ( ( a a ) ∗ ) {\displaystyle {\mathcal {L}}((aa)^{*})} . Offen ist aber noch die Frage, ob auch eine reguläre Sprache L {\displaystyle L} mit gsh ⁡ ( L ) ≥ 2 {\displaystyle \operatorname {gsh} (L)\geq 2} existiert.

Literatur

  • Lawrence C. Eggan: Transition graphs and the star-height of regular events. In: Michigan Mathematical Journal 10, 1963, 4, ISSN 0026-2285, S. 385–397, online (PDF; 1,2 MB), acc. 8. August 2010.
  • Kosaburo Hashiguchi: Algorithms for Determining Relative Star Height and Star Height. In: Information and computation 78, 1988, 2, ISSN 0890-5401, S. 124–169.
  • Jean-Eric Pin, Howard Straubing, Denis Thérien: Some results on the generalized star-height problem. In: Information and Computation 101, 1992, 2, ISSN 0890-5401, S. 219–250, liafa.jussieu.fr

Lichtdesign und Sonderleuchten in Stuttgart Campus Sternhöhe

Was ist ein Stern und wie

Landwirtschaft im Modell Sternrechen

Modul 2 » Sternentwicklung und FarbenHelligkeitsDiagramm Project

STERNDATEN Medium Astrologie Programme