Kontextfreie Grammatik. Benötige Hilfe und Tips.



  • Hallo. Ich soll eine Grammatik erstllen. „Größt möglicher Chomsky-typ“ > damit ist wohl Typ-2 gemeint.

    Folgende Bdeingungen:
    ± schließt das Wort ab und kommt nur einmal vor.
    # trennt ein Teilwort, dann beginnt ein Neues
    | trennt ein Teilwort und die Buchstaben werden gespiegelt.
    links vom | kommen die a,b, und c beleibig vor. a muß aber doppelt stehen > aa
    rechts vom | kommen a,b und c beliebig vor. cc muß aber doppelt stehen.

    Bisheriges:

    N = {...}
    T = {a, b, c. #, |, ± }
    P = {	A -> aaA | bA | cA | #A | |B | ±
    	B -> aB | bB | ccB | #A | |A | ±
    

    Wahrscheinlich brauch ich da mehr Nichtterminale. Habe ich auch schon versucht. Da klappt, daß dann aber nicht mehr mit dem Endsymbol. Ach ja. Leere Worte sind nicht erlaubt.

    Beispiele die zur Sprache gehören:

    bcaacaa|accaccb#bcc|ccccb±
    bcbb|bbccb#|± 
    aac|cca
    |#|
    caab|bacc#caa|acc±
    

    Die könnte ich mit der Grammatik ja bilden.

    Beispiele die nicht zur Sprache gehören:

    bcac|caccb#aa|a±
    bcac|ccacb#a|b
    b|a±
    caab|bacc#±
    

    Die ersten Beiden kann ich nicht bilden, wie gewollt.
    Aber die letzten beiden kann ich damit bilden. Nicht gewollt.

    Hat jemand einen Tipp für mich? Oder ein Link wo anschaulich erklärt wird, wie man Produktionsregeln effektiv aufstellt? Momentan sitze ich immer stundenlang davor und komm nicht wirklich weiter.

    Grüße
    eddi



  • Bin jetzt schonmal weiter. Jedenfalls kreige ich die spiegelung vernünftig hin.
    Fehlt "nur" noch die Raute. Bitte um Hilfe. Und | am Anfang.

    S -> A±
    A -> aaAB
    A -> bAC
    A -> cAD
    A -> |
    B -> a
    C -> b
    D -> cc
    

    Grüße


Anmelden zum Antworten