Es sei . Eine Sprache gesagt wird die „anti-Palindrom“ Eigenschaft hat , wenn für jede Saite dass ein Palindrom ist, . Außerdem ist für jede Zeichenfolge , die kein Palindrom ist, entweder oder , aber nicht beide (!) (Exklusive oder).L ⊆ Σ * w W ∉ L u u ∈ L R e V e r s e ( u ) ∈ L
Ich verstehe die Anti-Palindrom-Eigenschaft, konnte jedoch keine Sprachen finden, die diese Eigenschaft aufweisen. Die nächstgelegene ich finden konnte , ist , aber es hat nicht die ausschließliche oder teil ... das heißt, beispielsweise sowohl und sind in .01 10 L
Könnte mir jemand ein Beispiel für eine Sprache geben, die diese Eigenschaft hat? Oder vielleicht sogar mehr als ein einzelnes Beispiel, weil ich nicht verstehe, welche Einschränkungen dies für eine Sprache mit sich bringt. (Muss es nicht regelmäßig sein? Kontextfrei? Oder nicht einmal in ? Und etc.)
quelle
Antworten:
Ein Beispiel ist .L={x | binary(x)<binary(xR),x∈[0,1]∗}
Und noch ein Beispiel .L′={x | binary(x)>binary(xR),x∈[0,1]∗}
Die Idee ist, wenn Sie eine Regel bilden, um nur einen von ihnen zu wählen. Sie müssen die Regel so wählen, dass Palindrome verworfen werden sollen ( , für Palindrome müssen Sie ) haben. Sie können auch das Alphabet ändern, Ich habe binäres Alphabet genommen, um eine schnelle Antwort zu bekommen. f ( x ) < f ( x R ) f ( x ) = f ( x R )x≠xR f(x)<f(xR) f(x)=f(xR)
L ' L = { x | b i n a r y ( x ) < b i n a r y ( x R ) x x R ∉ x x R ∈ x ∈ }L und sind nicht regelmäßig. Und jede antipalindromische Sprache ist nicht regelmäßig und kann genauso schlecht sein wie eine Sprache ohne RE. Ein Beispiel für eine unentscheidbare Sprache: so dass wenn sowohl als auch Halt oder sowohl als auch Halt, sonst wenn HaltL′ L={x | binary(x)<binary(xR) x xR ∉ x xR ∈ x∈ }
Klaus Draeger erklärte im Kommentar unterhalb dieser anti-Palindrom Sprache am Anfang der Antwort ist kontextfrei:L={x0y1xR | x,y∈{0,1}∗}
quelle
Über das Generieren einiger Beispiele:
Aufbauend auf der Antwort von @shreesh, können wir beweisen , dass jede anti-Palindrom Sprache der Form sein muss für einige strenge totale Ordnung .<
In der Tat können wir bei jedem Anti-Palindrom ein assoziiertes wie folgt definieren. Wir beginnen mit einer beliebigen Aufzählung von , wobei jedes Wort genau einmal vorkommt. Dann ändern wir die Aufzählung: Für jedes Paar von Nicht-Palindromen tauschen wir ihre Position, damit dasjenige, das zu gehört, vor dem anderen erscheint. Die neue Aufzählung führt zu einer Gesamtreihenfolge befriedigend .< x 0 , x 1 , … { 0 , 1 } ≤ x , x R L < ( ≤ )L < x0,x1,… {0,1}∗ x,xR L < (∗)
Daß jedes als definierte kein Palindrom ist, ist trivial, so daß eine vollständige Charakterisierung von nicht-palindromen Sprachen ist.( ∗ ) ( ∗ )L (∗) (∗)
Wenn wir uns der ursprünglichen Frage widmen, wissen wir jetzt, dass wir mehrere Beispiele für Anti-Palindrom-Sprachen erhalten können, indem wir Bestellungen . Wir wissen auch, dass wir uns dadurch nicht auf eine Unterklasse von Sprachen beschränken, sondern die Allgemeinheit verlieren.<L <
Über die Frage "Können diese Sprachen regelmäßig sein?":
Um zu beweisen, dass ein Anti-Palindrom nicht regelmäßig ist, wird im Widerspruch angenommen, dass es regelmäßig ist.L
Aus der letzten Aussage können wir durch Pumpen einen Widerspruch ableiten. (Siehe zB hier für eine Lösung)
quelle
Hier ist eine einfache kontextfreie Grammatik für eine antipalindromische Sprache:
(Tatsächlich handelt es sich hierbei um die von @shreesh vorgeschlagene antipalindromische Sprache, bei der ein lexikografischer Vergleich für den Kleiner-als-Operator verwendet wird.)
quelle