Ich werde versuchen, einen etwas anderen Ansatz als die anderen Antworten zu wählen und insbesondere das Standardisierungsproblem zu untersuchen.
Es ist ein bisschen überraschend, dass Sie sich über diese Situation wundern. Das Hopcroft-Ullman-Buch (ich verwende die Ausgabe von 1979) enthält zwei Definitionen des PushDown-Automaten (PDA): Akzeptanz nach Endzustand oder nach leerem Stapel.
Wenn Sie den Abschnitt über die Konstruktionstechniken von Turing Machines (TM) lesen (Abschnitt 7.4 in der Ausgabe von 1979), heißt es ausdrücklich:
Das Entwerfen von Turing-Maschinen durch Aufschreiben eines vollständigen Satzes von Zuständen und einer Funktion für den nächsten Schritt ist eine spürbar unbelohnende Aufgabe. Um komplizierte Turing-Maschinenkonstruktionen zu beschreiben, benötigen wir einige "übergeordnete" konzeptionelle Werkzeuge.
Der Rest des Abschnitts und die folgenden Abschnitte zeigen alle Arten von Variationen der Definition eines TM, die die Definition erweitern oder einschränken und alle gleichwertig sind.
Der Punkt ist, dass wir für jedes Problem die Definition auswählen, die am besten geeignet ist, um dieses Problem zu lösen. Natürlich könnte jede dieser Definitionen im Prinzip funktionieren. Abhängig vom Problem geben Ihnen einige Definitionen mehr Klarheit über ein bestimmtes Problem und erleichtern so die Beweise.
In Bezug auf kontextfreie (CF) Sprachen und Grammatiken wurden viele Normalformen definiert: Chomsky-Normalform, Greibach-Normalform, Binärform. Alle können jede CF-Sprache generieren und sie können als Variationen der CF-Grammatikdefinition angesehen werden. Es ist gut, sie koexistieren zu lassen, weil jeder in einem bestimmten Kontext eine Rolle spielt. Sie sind übersetzbar, aber kostenpflichtig.
Wenn Sie versuchen, die Kosten / Komplexität der CF-Analyse zu analysieren, sind diese nicht gleichwertig, und dies ist zu berücksichtigen. Dieses Komplexitätsproblem ist im CF-Fall viel kritischer als im TM-Fall, da CF-Parser in technischen Situationen häufig verwendet werden, während TM ein rein theoretisches Werkzeug ist. Dies hindert Ingenieure, die CF-Parsing verwenden, nicht daran, verschiedene Grammatikformen für dieselbe Sprache auf koordinierte Weise zu verwenden, um verschiedene Probleme zu berücksichtigen.
Im Fall von CF-Sprachen kann dies ein kritisches technisches Problem sein , und es war daher zu erwarten, dass CF-Grammatiken und ihre verschiedenen Formen ungefähr so stark normalisiert / standardisiert werden wie die Größe der Schraubenschlüssel oder der Durchmesser der elektrischen Drähte. Tatsächlich ging es sogar darum, eine genaue Syntax für das Schreiben von CF-Grammatiken zu definieren, die Backus Naur Form (BNF) .
TM hat nur wenige technische Anwendungen, die eine Normalisierung rechtfertigen würden, und sie weisen eine viel größere potenzielle Variabilität auf (was jedoch teilweise berücksichtigt wird, wenn größere Variationen wie Multi-Tape, Multi-Head, ... berücksichtigt werden). Dies erklärt, dass es wenig Druck gab, eine Standardform anzunehmen, da Mathematiker, die sie verwenden, technisch ausgereift genug sein sollten, um vorsichtig zu sein, wenn es einen Unterschied machen kann, so genau die Anzahl der Züge zu zählen. Selbst für die Komplexität spielen die kleinen Variationen in den Definitionen oft keine Rolle, da wir nur die asymptotische Komplexität und oft die asymptotische Komplexität bis zu einer Polynomfunktion betrachten.
In der Mathematik (unter anderen Wissenschaften) ist es durchaus üblich, dass verschiedene Autoren unterschiedliche Definitionen wählen, von denen bekannt ist, dass sie gleichwertig sind (oder in den meisten Zusammenhängen gleichwertig sind), abhängig von ihrem Geschmack, ihrer Sicht auf Anwendungen, ihrer Vision der Problemstruktur. ihre pädagogischen Zwecke usw. Definitionen entwickeln sich auch mit der Zeit, wenn mehr über ein Problem bekannt wird und sich die Perspektiven ändern. Gleiches gilt für Notationen. Diese Variabilität ist eine wichtige Quelle für Fortschritt und Verständnis. Die Griechen machten ausgezeichnete Mathematik, aber mit modernen Konzepten (z. B. Variablen ), Definitionen und Notationen ist es viel einfacher .
Standards werden oft als äußerst praktisch angesehen (siehe Schraubenschlüssel und Drahtdurchmesser). Sie können aber auch ein Faktor der Starrheit sein, der den Fortschritt verhindert. Standardisierung ist ein zweischneidiges Schwert, daher müssen wir es aus Sicherheitsgründen ein wenig stumpfen. Die verschiedenen Definitionen sind normalerweise nicht ganz identisch, aber nahe genug, so dass sich Theorien mehr oder weniger auf die gleiche Weise entwickeln können.