matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Hochschulmathe
  Status Uni-Analysis
    Status Reelle Analysis
    Status UKomplx
    Status Uni-Kompl. Analysis
    Status Differentialgl.
    Status Maß/Integrat-Theorie
    Status Funktionalanalysis
    Status Transformationen
    Status UAnaSon
  Status Uni-Lin. Algebra
    Status Abbildungen
    Status ULinAGS
    Status Matrizen
    Status Determinanten
    Status Eigenwerte
    Status Skalarprodukte
    Status Moduln/Vektorraum
    Status Sonstiges
  Status Algebra+Zahlentheo.
    Status Algebra
    Status Zahlentheorie
  Status Diskrete Mathematik
    Status Diskrete Optimierung
    Status Graphentheorie
    Status Operations Research
    Status Relationen
  Status Fachdidaktik
  Status Finanz+Versicherung
    Status Uni-Finanzmathematik
    Status Uni-Versicherungsmat
  Status Logik+Mengenlehre
    Status Logik
    Status Mengenlehre
  Status Numerik
    Status Lin. Gleich.-systeme
    Status Nichtlineare Gleich.
    Status Interpol.+Approx.
    Status Integr.+Differenz.
    Status Eigenwertprobleme
    Status DGL
  Status Uni-Stochastik
    Status Kombinatorik
    Status math. Statistik
    Status Statistik (Anwend.)
    Status stoch. Analysis
    Status stoch. Prozesse
    Status Wahrscheinlichkeitstheorie
  Status Topologie+Geometrie
  Status Uni-Sonstiges

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenFormale SprachenKorrektheit einer Grammatik
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Deutsch • Englisch • Französisch • Latein • Spanisch • Russisch • Griechisch
Forum "Formale Sprachen" - Korrektheit einer Grammatik
Korrektheit einer Grammatik < Formale Sprachen < Theoretische Inform. < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Formale Sprachen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Korrektheit einer Grammatik: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 22:39 Sa 22.11.2008
Autor: chriz123

Aufgabe
Könnte mir jemand erklären wie ich die Korrektheit einer Grammatik zeige??



Vieleicht an einem Beispiel, allgemein würde mir aber auch erstmal weiterhelfen.

Vielen Dank!
Chriz123

        
Bezug
Korrektheit einer Grammatik: Antwort
Status: (Antwort) fertig Status 
Datum: 10:50 So 23.11.2008
Autor: bazzzty


> Könnte mir jemand erklären wie ich die Korrektheit einer
> Grammatik zeige??
>  
> Vieleicht an einem Beispiel, allgemein würde mir aber auch
> erstmal weiterhelfen.

Ganz allgemein: Indem ich zeige, daß die Grammatik nur Wörter erzeugt, die in der angegebenen Sprache liegen und das zweitens jedes Wort der Sprache durch die Grammatik erzeugt werden kann.

Den ersten Teil kann man üblicherweise über Invarianten während der Ableitung zeigen, den zweiten Teil meist konstruktiver. Wenn Du ein Beispiel hast, ist es etwas einfacher.

Bezug
                
Bezug
Korrektheit einer Grammatik: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 12:08 So 23.11.2008
Autor: chriz123


> > Könnte mir jemand erklären wie ich die Korrektheit einer
> > Grammatik zeige??
>  
> Ganz allgemein: Indem ich zeige, daß die Grammatik nur
> Wörter erzeugt, die in der angegebenen Sprache liegen und
> das zweitens jedes Wort der Sprache durch die Grammatik
> erzeugt werden kann.
> Den ersten Teil kann man üblicherweise über Invarianten
> während der Ableitung zeigen, den zweiten Teil meist
> konstruktiver. Wenn Du ein Beispiel hast, ist es etwas
> einfacher.


Hm, nehmen wir mal zum Beispiel die Grammatik, die Wörter mit doppelt so vielen a's wie b's erzeugt:

$G =({A, B, S}, {a, b}, P, S)$
P: S [mm] \to [/mm] AAB|ABA|BAA,
A [mm] \to [/mm] a|BAAA|ABAA|AABA|AAAB,
B [mm] \to [/mm] b|BBAA|BABA|BAAB|ABAB|AABB

Zu zeigen ist also, das G nur Wörter mit doppelt so vielen a's wie b's erzeugt und das G alle Wörter mit doppelt so vielen a's wie b's erzeugt.

Weiter könnte ich das aber nur mit eigenen Woten erklären:

Von der Startvariable können nur Wörter der Form AAB, ABA oder BAA erzeugt werden.
Da aus der Variable A nur a als Terminalsymbol abgeleitet werden kann und aus B nur b als Terminalsymbol sind die genannten alles wörter mit doppelt so vielen a's wie b's.
Außerdem kann die Variable A durch hinzufügen von wiederum einem B und zwei A's (die Variable selbst bleibt auch erhalten), wieder Wörter mit doppelt so vielen a's wie b's erzeugen.
B ...

Dazu das G alle Wörter der Sprache akzeptiert kann ich nur sagen, das die Regeln alle Positionen von a's bzw. b's einschließen und unendlich lange Wörter erzeugt werden können.

Naja vom Sinn müsste das ja hinhauen...
Aber könnte mir jemand zeigen wie ich das formaler zeigen kann.
Was bedeutet z.B. Invarianten??


Bezug
                        
Bezug
Korrektheit einer Grammatik: Antwort
Status: (Antwort) fertig Status 
Datum: 13:28 So 23.11.2008
Autor: bazzzty


> Hm, nehmen wir mal zum Beispiel die Grammatik, die Wörter
> mit doppelt so vielen a's wie b's erzeugt:
>  
> [mm]G =({A, B, S}, {a, b}, P, S)[/mm]
>  P: S [mm]\to[/mm] AAB|ABA|BAA,
>  A [mm]\to[/mm] a|BAAA|ABAA|AABA|AAAB,
>  B [mm]\to[/mm] b|BBAA|BABA|BAAB|ABAB|AABB
>  
> Zu zeigen ist also, das G nur Wörter mit doppelt so vielen
> a's wie b's erzeugt und das G alle Wörter mit doppelt so
> vielen a's wie b's erzeugt.
>  
> Weiter könnte ich das aber nur mit eigenen Woten erklären:
> [..]

Deine Erklärung ist schon ganz gut! An dem Beispiel kann man aber auch toll sehen, wie man mit Invarianten argumentiert.

Eine Invariante ist eine Eigenschaft, die durch Ableitungen nicht zerstört wird. Im Beispiel:

Wir zeigen folgende Invariante obiger Grammatik:
"Die Anzahl der "A" plus die Anzahl der "a" ist zu jedem Zeitpunkt
doppelt so groß wie die Anzahl der "B" plus die Anzahl der "b".
Beweis: Bei jeder Ableitung kommen entweder zwei "A" und ein "B" hinzu oder ein "A" wird in ein "a" geändert oder ein "B" in ein "b".
Da die Invariante am Anfang gilt (für "S"), gilt sie dann auch für alle erzeugten Worte. Die enthalten keine Nichtterminale, bestehen also aus doppelt so vielen "a" wie "b".

Das ist schon sehr ausführlich. Meist reicht die Angabe einer Invarianten schon als Beweis.

Daß alle Wörter erzeugt werden, sollte man auch sehr viel formaler zeigen. Hier gibt es sehr viel mehr Techniken, aber in diesem Beispiel bietet sich folgender Beweis an, in etwa ein Beweis des kleinsten Gegenbeispiels:

Wir versuchen, zu zeigen, daß jede Folge von Nichtterminalen A und B
erzeugt werden kann, die doppelt so viele As wie Bs enthält (dann kann man auch jedes Wort erzeugen, weil die Nichtterminale ja einfach umgewandelt werden).

Jetzt nehmen wir an, es gäbe eine solche Folge, die sich nicht erzeugen läßt. Dann gibt es auch eine solche Folge mit minimaler Länge. Und die gucken wir uns an. Wir nehmen also an, es gäbe eine kürzeste Folge von doppelt so vielen As und Bs, die sich nicht ableiten läßt (mal als Beispiel: ABAABAAABBAA, der Beweis ist natürlich allgemein). Jedes solche Wort mit mindestens vier Nichtterminalen enthält aber eine der rechten Seiten (warum?), kann also erzeugt werden aus einem kürzeren Wort (ABAABA/AABB/AA kann z.B. erzeugt werden aus ABAABA/B/AA).
Wenn also letzteres erzeugt werden kann (wir hatten uns das kürzeste nichterzeugbare Wort vorgenommen), dann kann auch unser Wort erzeugt werden. Es gibt also kein nichterzeugbares Wort mit doppelt so vielen As wie Bs.

Es fehlt noch die Behandlung von Wörtern mit Länge <=3 und die Begründung, daß man immer eine rechte Seite in längeren Worten findet, aber ist das Prinzip klar?

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Formale Sprachen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.unimatheforum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]