Postsches Korrespondenzproblem

Das Postsche Korrespondenzproblem (nach Emil Leon Post, abgekürzt auch PKP oder englisch PCP) ist ein Beispiel für ein unentscheidbares Problem in der Theoretischen Informatik. Es wird häufig verwendet, um mittels Reduktion die Unentscheidbarkeit anderer Probleme zu zeigen.

Gegeben ist eine endliche Folge P {\displaystyle P} von Paaren ( ( x 1 , y 1 ) , ( x 2 , y 2 ) , , ( x m , y m ) ) {\displaystyle \left((x_{1},y_{1}),(x_{2},y_{2}),\ldots ,(x_{m},y_{m})\right)} von nicht-leeren Wörtern x 1 , x 2 , , x m , y 1 , y 2 , , y m {\displaystyle x_{1},x_{2},\ldots ,x_{m},y_{1},y_{2},\ldots ,y_{m}} über einem endlichen Alphabet. Man nennt P {\displaystyle P} auch einen Problemfall oder eine Instanz.

Eine nicht-leere Folge I = i 1 , i 2 , , i n {\displaystyle I=i_{1},i_{2},\ldots ,i_{n}} von Indizes aus { 1 , 2 , , m } {\displaystyle \{1,2,\ldots ,m\}} heißt eine Lösung zum Problemfall P {\displaystyle P} , falls die Konkatenation (Verkettung) der Wörter x i 1 , x i 2 , , x i n {\displaystyle x_{i_{1}},x_{i_{2}},\ldots ,x_{i_{n}}} gleich der Konkatenation der Wörter y i 1 , y i 2 , , y i n {\displaystyle y_{i_{1}},y_{i_{2}},\ldots ,y_{i_{n}}} ist.

Das Korrespondenzproblem ist dann die Aufgabe, zu einem beliebigen Problemfall anzugeben, ob er eine Lösung besitzt oder nicht. Das Korrespondenzproblem ist unentscheidbar, das heißt, es gibt keinen Algorithmus, der zu jedem beliebigen Problemfall die richtige Antwort gibt.

Anschauliche Darstellung

Die Wortpaare ( x i , y i ) {\displaystyle (x_{i},y_{i})} eines Problemfalls kann man sich gut wie Dominosteine vorstellen, bei denen auf der einen Hälfte x i {\displaystyle x_{i}} und auf der anderen Hälfte y i {\displaystyle y_{i}} steht. Es gibt m {\displaystyle m} Arten von Dominosteinen und von jeder Art stehen beliebig viele Dominosteine zur Verfügung.

Das Korrespondenzproblem lässt sich nun also wie folgt verstehen: Gibt es eine Folge von Dominosteinen, so dass die Wörter auf der oberen Hälfte der Dominosteine (von links nach rechts gelesen) dasselbe Wort ergeben wie die (von links nach rechts gelesenen) Wörter aus der unteren Hälfte der zusammengelegten Dominosteine?

Beispiel

Gegeben:

P 1 = ( ( 1 , 101 ) , ( 10 , 00 ) , ( 011 , 11 ) ) {\displaystyle P_{1}=\left((1,101),(10,00),(011,11)\right)}

x 1 = 1 , {\displaystyle \left.x_{1}=1\right.,} x 2 = 10 , {\displaystyle \left.x_{2}=10\right.,} x 3 = 011 {\displaystyle \left.x_{3}=011\right.}
y 1 = 101 , {\displaystyle \left.y_{1}=101\right.,} y 2 = 00 , {\displaystyle \left.y_{2}=00\right.,} y 3 = 11 {\displaystyle \left.y_{3}=11\right.}

Lösung:

I 1 = ( 1 , 3 , 2 , 3 ) {\displaystyle I_{1}=(1,3,2,3)}

Es gilt: x 1 x 3 x 2 x 3 = 1 011 10 011 = 101110011 = 101 11 00 11 = y 1 y 3 y 2 y 3 {\displaystyle x_{1}\cdot x_{3}\cdot x_{2}\cdot x_{3}=1\cdot 011\cdot 10\cdot 011=101110011=101\cdot 11\cdot 00\cdot 11=y_{1}\cdot y_{3}\cdot y_{2}\cdot y_{3}} .

I 1 {\displaystyle I_{1}} ist also eine Lösung des Problemfalls P 1 {\displaystyle P_{1}} .

Als Dominofolge: 1 101   011 11   10 00   011 11 {\displaystyle {\frac {1}{101}}\ {\frac {011}{11}}\ {\frac {10}{00}}\ {\frac {011}{11}}} .

Bemerkungen dazu:

Natürlich bildet jede Verkettung zweier Lösungen oder einer Lösung mit sich selbst wieder eine Lösung. Man kann also fragen, ob eine Lösung aus kürzeren Lösungen zusammengesetzt ist. Die Lösung ( 1 , 3 , 2 , 3 ) {\displaystyle (1,3,2,3)} ist nicht aus kürzeren Lösungen zusammengesetzt: sie ist primitiv. Manchmal gibt es mehrere primitive Lösungen, nicht jedoch in diesem Beispiel.

Das Beispiel P 1 {\displaystyle P_{1}} erweckt vielleicht den Eindruck, dass das Postsche Korrespondenzproblem gar nicht so schwierig ist. Es gibt jedoch auch Problemfälle, die nur sehr lange Lösungen haben.

Hierzu ein Beispiel P 2 {\displaystyle P_{2}}

x 1 = 001 , {\displaystyle \left.x_{1}=001\right.,} x 2 = 01 , {\displaystyle \left.x_{2}=01\right.,} x 3 = 01 , {\displaystyle \left.x_{3}=01\right.,} x 4 = 10 {\displaystyle \left.x_{4}=10\right.}
y 1 = 0 , {\displaystyle \left.y_{1}=0\right.,} y 2 = 011 , {\displaystyle \left.y_{2}=011\right.,} y 3 = 101 , {\displaystyle \left.y_{3}=101\right.,} y 4 = 001 {\displaystyle \left.y_{4}=001\right.}

Eine kürzeste Lösung besteht schon aus 66 Paaren:

I 1 = ( 2 , 4 , 3 , 4 , 4 , 2 , 1 , 2 , 4 , 3 , 4 , 3 , 4 , 4 , 3 , 4 , 4 , 2 , 1 , 4 , 4 , 2 , 1 , 3 , 4 , 1 , 1 , 3 , 4 , 4 , 4 , 2 , 1 , 2 , 1 , 1 , 1 , 3 , 4 , 3 , 4 , 1 , 2 , 1 , 4 , 4 , 2 , 1 , 4 , 1 , 1 , 3 , 4 , 1 , 1 , 3 , 1 , 1 , 3 , 1 , 2 , 1 , 4 , 1 , 1 , 3 ) {\displaystyle I_{1}=(2,4,3,4,4,2,1,2,4,3,4,3,4,4,3,4,4,2,1,4,4,2,1,3,4,1,1,3,4,4,4,2,1,2,1,1,1,3,4,3,4,1,2,1,4,4,2,1,4,1,1,3,4,1,1,3,1,1,3,1,2,1,4,1,1,3)}

An dieser Lösung kann man leicht die Komplexität des Problems erkennen.

Grenzen zwischen Entscheidbarkeit und Unentscheidbarkeit

Durch systematisches Ausprobieren lässt sich eine Lösung nach endlicher Zeit finden, sofern es eine gibt. Das PKP ist somit ein semi-entscheidbares Problem. Wenn es jedoch keine Lösung gibt, wird dieser Algorithmus nicht terminieren. Der Nachweis, dass es kein Entscheidungsverfahren für PKP gibt, kann durch eine Reduktion des Halteproblems auf eine Variante des Korrespondenzproblems erbracht werden.

Sonderfälle

Durch Einschränkung des Alphabets wird das Problem „einfacher“.

Lässt man nur Wortpaare über einem einelementigen Alphabet zu, dann wird aus dem PKP ein entscheidbares Problem. Das PKP eingeschränkt auf ein zweielementiges Alphabet dagegen bleibt unentscheidbar, denn ein beliebiges Alphabet kann in einem zweielementigen Alphabet kodiert werden.

Man kann auch die Größe einschränken, das heißt die Anzahl der Paare in den Problemfällen P {\displaystyle P} . Für die Größen 1 und 2 wird das PKP entscheidbar.[1] Die Größe 5 reicht aus für Unentscheidbarkeit.[2] Ob für die Größe 3 oder 4 das PKP entscheidbar ist oder nicht, ist noch ungeklärt.

Außerdem gilt: Wenn in allen Paaren p i = ( x i , y i ) {\displaystyle p_{i}=\left(x_{i},y_{i}\right)} die erste Komponente länger bzw. kürzer als die zweite ist ( i : | x i | > | y i | {\displaystyle \forall i\colon \left|x_{i}\right|>\left|y_{i}\right|} oder i : | x i | < | y i | {\displaystyle \forall i\colon \left|x_{i}\right|<\left|y_{i}\right|} ), ist die Instanz unlösbar. Dasselbe gilt, wenn ein Symbol nur in den ersten oder nur in den zweiten Komponenten vorkommt oder wenn es kein Paar gibt, das „gleich beginnt“ oder „gleich endet“ (Präfixe, Suffixe).

Trivia

Nach einer Idee von Steffen Lange im Jahr 2011 kann das Postsche Korrespondenzproblem als Ausgangspunkt für eine dominoartige Spiele-Familie, die sogenannten PCP-Spiele, dienen.[3]

Siehe auch

  • Wang-Parkettierung[2]

Einzelnachweise

  1. Andrzej Ehrenfeucht, G. Rozenberg: On the (Generalized) Post Correspondence Problem with Lists of Length 2. In: Proc. 8th Int. Coll. Automata, Languages, and Programming. LNCS 115. Springer, 1981, S. 219–234. 
  2. a b Turlough Neary: Undecidability in Binary Tag Systems and the Post Correspondence Problem for Five Pairs of Words. In: 32nd International Symposium on Theoretical Aspects of Computer Science (STACS 2015) (= Leibniz International Proceedings in Informatics (LIPIcs)). Band 30. Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany 2015, ISBN 978-3-939897-78-1, S. 649–661, doi:10.4230/LIPIcs.STACS.2015.649 (dagstuhl.de [abgerufen am 18. Februar 2019]). 
  3. Klaus Peter Jantke: PCP-Spiele, 2016, Technical Report, Report-Reihe der Abteilung Kindermedien des Fraunhofer-Institut für Digitale Medientechnologie IDMT, online bei Researchgate als PDF-Datei erhältlich
  • Online-PCP Lösungstool