Wie schreibe ich einen Beweis mit Induktion über die Länge der Eingabezeichenfolge?


20

In meinem Kurs über Computertheorie bestehen viele unserer Probleme darin, mithilfe der Induktion der Länge der Eingabezeichenfolge Aussagen über endliche Automaten zu beweisen. Ich verstehe die mathematische Induktion, aber wenn Saiten ins Spiel kommen, werde ich richtig gestolpert. Ich würde es wirklich begrüßen, wenn jemand Schritt für Schritt einen solchen Beweis anfertigen würde.

Hier ist ein Beispielproblem (Übung 2.2.10 aus Hopcroft und Ullman 3rd Edition):

Betrachten Sie den DFA mit der folgenden Übergangstabelle:

        0 1
       ________
-> A | AB
  * B | BA

Beschreiben Sie informell die von diesem DFA akzeptierte Sprache und beweisen Sie anhand der Länge einer Eingabezeichenfolge durch Induktion, dass Ihre Beschreibung korrekt ist.

Dies ist ein beantwortetes Problem im Buch, daher suche ich nicht jemanden, der meine Hausaufgaben macht. Ich brauche nur jemanden, der es mir gerade erklärt.

Antwort des Buches: (von hier genommen )

Der Automat gibt an, ob die Anzahl der gesehenen Einsen gerade (Zustand A) oder ungerade (Zustand B) ist, was im letzteren Fall akzeptiert wird. Es ist eine einfache Einführung in | w | um zu zeigen, dass dh (A, w) = A ist, wenn w eine gerade Zahl von 1 hat. Basis: | w | = 0. Dann hat w, die leere Zeichenkette sicher eine gerade Anzahl von Einsen, nämlich Nullen, und δ-hat (A, w) = A.

Induktion: Nehmen Sie die Anweisung für Zeichenketten an, die kürzer als w sind. Dann ist w = za, wobei a entweder 0 oder 1 ist.

  • Fall 1: a = 0. Wenn w eine gerade Anzahl von Einsen hat, hat z auch eine gerade Anzahl von Einsen. Nach der induktiven Hypothese ist δ-hat (A, z) = A. Die Übergänge des DFA sagen uns δ-hat (A, w) = A. Wenn w eine ungerade Zahl von 1 hat, dann hat z auch eine ungerade Zahl. Durch die induktive Hypothese sagen δ-hat (A, z) = B und die Übergänge des DFA uns δ-hat (A, w) = B. Somit ist in diesem Fall δ-hat (A, w) = A genau dann, wenn w eine gerade Zahl von 1 hat.

  • Fall 2: a = 1. Wenn w eine gerade Zahl von Einsen hat, dann hat z eine ungerade Zahl von Einsen. Nach der induktiven Hypothese ist δ-hat (A, z) = B. Die Übergänge der DFA sagen uns δ-hat (A, w) = A. Wenn w eine ungerade Zahl von 1 hat, dann hat z eine gerade Zahl von 1's. Durch die induktive Hypothese sagen δ-hat (A, z) = A und die Übergänge des DFA δ-hat (A, w) = B. Somit ist auch in diesem Fall δ-hat (A, w) ) = A genau dann, wenn w eine gerade Zahl von 1 hat.

Ich verstehe, wie man Dinge wie mit Induktion beweist. Ich bin nur verwirrt, wie das mit dem Bauen von Strings funktioniert. Die kühnen Teile verwirren mich. Ich verstehe nicht, wie sie entstanden sind / wie es tatsächlich beweist, was akzeptiert wird / wie es induktiv ist.i=0ni=n(n+1)2

δ-hat ist übrigens die erweiterte Übergangsfunktion.

Antworten:


17

Da unklar ist, wo Ihr Problem liegt, fange ich ganz am Anfang an.

Die mathematische Induktion funktioniert wie das Spiel des chinesischen Flüsterns (im Idealfall, dh die gesamte Kommunikation ist verlustfrei) oder (perfekt eingerichteter) Dominosteine : Sie beginnen irgendwo und zeigen, dass jeder Ihrer nächsten Schritte nichts kaputt macht, vorausgesetzt, dass bis dahin nichts kaputt ist dann.

Formal besteht jeder Induktionsnachweis aus drei Grundelementen:

  • Induktions - Anker , auch Basisfall : Sie zeigen für kleines cases¹ , dass die Forderung hält.
  • Induktions - Hypothese : Sie gehen davon aus, dass der Anspruch auf eine bestimmte Teilmenge der Menge hält Sie etwas beweisen wollen.
  • Induktiver Schritt : Mit der Hypothese zeigen Sie, dass die Behauptung für mehr Elemente gilt.

Natürlich muss der Step so eingestellt werden, dass er den gesamten Basissatz (im Limit) abdeckt.

Wichtiger Hinweis: Personen, die von ihren Induktionsfähigkeiten überzeugt sind, beschönigen häufig den Anker und lassen die Hypothese implizit. Dies ist zwar in Ordnung, wenn Sie Ihre Arbeit einem Fachpublikum (z. B. einem Referat) präsentieren, wird jedoch nicht empfohlen, wenn Sie selbst Beweise anfertigen, insbesondere als Anfänger. Schreibe alles auf.


Betrachten Sie ein einfaches Beispiel über ; Wir wollen zeigen, dass für alle .n i = 0 i = n ( n + 1 )(N,) nNi=0ni=n(n+1)2nN

  • Anker : Für gilt .n i = 0 i = 0 = n ( n + 1 )n=0i=0ni=0=n(n+1)2
  • Hypothese : Nehmen Sie an, dass für ein beliebiges, aber festes² . nNi=0ki=k(k+1)2nN
  • Schritt : Berechnen Sie für die Summe:n+1

    i=0n+1i=(n+1)+i=0ni=IHn+1+n(n+1)2=(n+2)(n+1)2

    Die Identität gilt also für . (Wir stellen fest, dass wir nur einen winzigen Teil der Hypothese benötigten, nämlich für . Das passiert oft.)n+1k=n

Das induktive Prinzip versichert uns nun, dass die Behauptung tatsächlich gilt: Wir haben sie direkt für . Der Schritt sagt, wenn es für , gilt es auch für ; wenn es für , gilt es auch für ; und so weiter.00112


Schauen wir uns ein weiteres Beispiel an . Die Behauptung , wir beweisen wollen , ist: für jede endliche Teilmenge von , die Größe der Kraft gesetzt von ist ³. Wir führen unsere Induktion über wieder, und zwar über die Größe der Teilmengen .(2N,)AN2AA2|A|(N,)A

  • Anker: Betrachten Sie die (einzige) Menge der Größe , die leere Menge. Offensichtlich ist und daher wie beansprucht.02={}|2|=1=20
  • Hypothese: Nehmen wir für alle Mengen mit mit einem willkürlichen, aber festen haben wir .AN|A|nnN|2A|=2|A|
  • Schritt: Sei beliebig⁴ mit der Größe und sei beliebig (so existiert als ). Nun gilt die Hypothese für und damit . Schon seitBNn+1bBbn+1>0B{b}|2B{b}|=2n

    2B=2B{b}{A{b}A2B{b}} ,

    wir haben tatsächlich das wie beansprucht.|2B|=2|2B{b}|=22n=2n+1

Auch hier ist die Behauptung durch Induktion bewiesen.


Nun, für Ihr Problem kann ein allgemeiner Trick verwendet werden: Stärkung der Aussage . Wenn Sie Ihre Behauptung als "der Automat akzeptiert alle Wörter mit einer ungeraden Anzahl von Einsen" formulieren, erhalten Sie eine Induktionshypothese wie "unter allen Wörtern der Länge werden genau diejenigen mit einer ungeraden Anzahl von Einsen vom Automaten akzeptiert". Dies führt Sie nicht weiter, da wir nicht wissen, wie viele in welchem ​​Teil eines gegebenen (akzeptierten) Wortes enthalten sind. Die Hypothese gilt nicht für alles, was Sie aus Ihrem willkürlich ausgewählten Wort herausschneiden.n

Aus diesem Grund möchten Sie eine stärkere Behauptung aufstellen: "Der Automat befindet sich genau dann im Zustand wenn der verbrauchte Teil der Eingabe eine ungerade Anzahl von Einsen enthielt" und diese anzeigen. Beachten Sie, dass dies die frühere Behauptung impliziert.B

  • Anker : Nach der Verarbeitung der einzigen Zeichenfolge mit der Länge Null, , befindet sich der Automat eindeutig in dem beanspruchten ZustandAεA
  • Hypothese : Es sei angenommen, dass die Behauptung für Eingabefragmente mit einer Länge von bis zu gilt, die willkürlich gewählt, aber fest ist.n
  • Schritt : Betrachten Sie ein beliebiges Wort . Es gibt zwei Fälle. w{0,1}n+1
    1. w enthält eine gerade Anzahl von Einsen. Es gibt zwei Fälle für das letzte Symbol.
      1. wn=0 : In diesem Fall enthält eine gerade Anzahl von Einsen. Durch Induktion Hypothese ist der Automat in Zustand nach dem Konsum . Das Verbrauchen von bewirkt, dass der Automat , wie beansprucht, in Zustand bleibt .w=w1wn1Awwn=0A
      2. w ' = w 1 ... w n - 1 B w ' w n = 1 Awn=1 : In diesem Fall enthält eine ungerade Anzahl von Einsen. Durch Induktion Hypothese ist der Automat in Zustand nach dem Konsum . Das Verbrauchen von bewirkt, dass der Automat , wie beansprucht , in den Zustand wechselt.w=w1wn1Bwwn=1A
    2. w enthält eine ungerade Anzahl von Einsen. Ähnlich wie in Fall 1.

Das Prinzip der Induktion impliziert, dass die Behauptung tatsächlich gilt.


  1. Sie führen die Induktion in einer Teilreihenfolge durch. Der Anker muss alle minimalen Elemente abdecken und manchmal mehr (abhängig von der Anweisung).
  2. Das "willkürliche, aber feste" ist unabdingbar! Wir können im Schritt nicht ändern und so behandeln, als wäre es eine feste Zahl, aber wir können auch nichts davon annehmen.n
  3. Die Angabe der eingestellten Leistung mit mag seltsam erscheinen. Es ist begründet in der Beobachtung, dass die Potenzmenge der Menge aller Funktionen von bis , was so bezeichnet wird. A 0 , 12AA0,1
  4. Die Auswahl von ist für die Abdeckung des gesamten Raums von entscheidender Bedeutung. Man könnte versucht sein zu sagen: "Nimm ein solches und füge ein Element hinzu, das vorher nicht da war." In diesem Fall würde dies dasselbe tun, aber bei komplizierteren Einstellungen (z. B. Hinzufügen von Knoten zu Diagrammen) kann es leicht zu Fehlern kommen. Nehmen Sie immer ein beliebig größeres Objekt und schneiden Sie es dann auseinander, um die Hypothese auf seine Teile anzuwenden; Bauen Sie niemals das größere Objekt aus dem kleineren zusammen, die von der Hypothese abgedeckt werden.ABA
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.