JavaScript promise rejection: Loading CSS chunk katex failed. (error: https://git.gaminggeneration.de/assets/css/katex.faca27c4.css). Open browser console to see more details. (66)
Files
.idea
Writerside
cfg
images
topics
02
04
Datenbanken
HCI
Informatik und Gesellschaft
Projektmanagement
Rechnernetze
Software Engineering
Theoretische Informatik
Hausaufgaben
Übungen
01Einleitung.md
02_GrundlagenFormaleSprachen.md
03_GrundlagenEndlicherAutomaten.md
04_GrenzenGroesseEA.md
06
StartPage.md
c.list
in.tree
v.list
writerside.cfg
.gitlab-ci.yml
README.md
zusammenfassungen/Writerside/topics/04/Theoretische Informatik/04_GrenzenGroesseEA.md
David Schirrmeister 596770dc3b update
2025-04-29 16:22:25 +02:00

2.9 KiB

Grenzen & Größen endlicher Automaten

Nerode-Index einer Sprache

  • Sei L=\{w ∈ \{x,y,z\}^*\}\space | \space \#_z(w) ∈ \{2,3\}\}

  • betrachte die Wörter aus \{x, y, z\}^*

    • Gruppiere sie hinsichtlich des "Grad der Zugehörigkeit" zu L
      • image_780.png
  • Beobachtung:

    • zwei Worte u ∈ L und v \not\in L sind sicherlich nicht sehr ähnlich
    • zwei Worte u,v ∈ L können ähnlich sein
      • ähnlich: zz und yzxxzy
      • nicht ähnlich: zz und zzz
    • zwei Worte u,v \not\in L können ähnlich sein
      • ähnlich: ε und xxy
      • nicht ähnlich: ε und yzxxxy
  • u,v ∈ Σ^* sind ähnlich bezüglich L, wenn:

    • durch anhängigen des gleichen, beliebigen Wortes
      • in beiden Fällen ein Wort aus L entsteht
      • in beiden Fällen ein Wort aus Σ \backslash L entsteht

Rechtsäquivalenz

  • gegebene Sprache L über Alphabet Σ
  • u,v ∈ Σ^* heißen rechtsäquivalent bezüglich L, wenn
    • ∀s ∈ Σ^*: u*s ∈ L ↔ v*s ∈ L
  • wir schreiben auch: (u,v) ∈ R_L oder u \space R_L \space v

Nerode-Klassen und -Index

  • gegebene Sprache L über Alphabet Σ und Wort u ∈ Σ^*
  • Nerode-Klasse $N(u)$: Menge der zu u rechtsäquivalenten Wörter:
    • N(u) := \{v ∈ Σ^* \space | \space (u,v) ∈ R_L\}
  • Nerode-Index von L: Anzahl Nerode-Klassen

Beispiel

  • ist v ∈ N(u) so gilt N(v)=N(u)

  • beliebiges u ∈ N heißt Repräsentant der Nerode-Klasse N

  • Wie lauten die Nerode-Klassen von der Sprache L_1 = \{w ∈ \{x,y,z\}^* \space | \space \#_Z(w) ∈ \{2,3\}\}?

    • image_781.png
  • Wie viele Nerode-Klassen hat L_2=\{0^n*1^n \space | \space n ∈ N_0\}

    • bspw. N_i=N(0^i) für i ∈ N_0

Eigenschaften von Nerode-Klassen

Nützliche Eigenschaften

Alles-oder-nichts

Sei L eine Sprache und N eine Nerode Klasse von L. Dann gilt entweder N ⊆ L oder N \not ⊆ L := Σ^* \backslash L

Beweis:

  • wähle beliebiges, festes u ∈ N
  • für jedes v ∈ N gilt: u und v sind rechtsäquivalent
  • insbesondere: u = u * ε ∈ L ↔ v * ε = v ∈ L
  • also entweder sind alle solche Wörter v aus L (wenn u ∈ L)
  • oder es sind alle solche Wörter v nicht aus L (wenn u \not ∈ L)

Mitgegangen-Mitgefangen

Sei L eine Sprache und u,v ∈ Σ^* Wörter aus der gleichen Nerode-Klasse. Dann gilt für alle s ∈ Σ^*: N(u*s)=N(v*s)

Beweis:

  • zu zeigen: (u*s, v*s) ∈ R_{L(A)}
  • sei dazu w ∈ Σ^* beliebig, dann gilt:
    • image_782.png

Gemeinsame Reise

Sei A = (Σ, Q, q_s, Q_A, δ) ein DEA. Betrachte zwei Worte u,v ∈ Σ^* die A in den gleichen Zustand überführen. Dann sind u und v rechtsäquivalent bzgl. L(A)

image_783.png

Der Satz von Myhill-Nerode

Reaping the Fruits!

Minimierungsalgorithmus