Die Lernbereiche Inf3.3 eN bzw. Inf3.3 gN behandeln endliche, akzeptierende Automaten (sowohl deterministisch als auch nichtdeterministisch) zur Erkennung formaler Sprachen. Dabei wird auch betrachtet, dass endliche Automaten nur Sprachen der Chomsky-Hierarchieebene 3 erkennen können; für Chomsky-2-Sprachen werden komplexere Modelle benötigt, die Kellerautomaten. Im erhöhten Niveau wird als Universalmaschine zusätzlich der komplexeste Automatentyp, die Turingmaschine, betrachtet.
Das hier verfügbare Automatentool kann deterministische und nichtdeterministische endliche Automaten, Kellerautomaten sowie Turingmaschinen erstellen und ausführen lassen.
![]() Endlicher deterministischer Automat Als nächstes wird as Zeichen "1" abgearbeitet. |
![]() Endlicher nichtdeterministischer Automat Die Übergänge für das Zeichen "1" sind bestimmt. |
![]() Kellerautomat Der Übergang für das Zeichen "+" mit Kellertop "(" ist bestimmt. |
![]() Turingmaschine Der Übergang für das Bandsymbol "_" sind bestimmt. |
Das Programm wurde in Java entwickelt und besteht aus einer ausführbaren JAR-Datei.
Voraussetzung zum Starten des Programms ist daher unabhängig vom Betriebssystem eine
Java-Laufzeitumgebung Java 15 oder besser. Für Windows und macOS (mit Java-Laufzeitumgebung) stehen Wrapper
zur Verfügung, welche die JAR-Datei zu einem vollständigen Programm ergänzen.
Für den Einsatz auf einem iPad staht das Projekt als Playground zur Verfügung.
Zum Ausführen wird eine Playground-App für mindestens Swift 5 benötigt.
ACHTUNG Windows-Benutzer
Bei Windows wird eine neu installierte Java-Version nicht automatisch zur aktuellen Version; die aktuelle Version muss zuerst im
Java-Kontrollpanel in der Systemsteuerung eingestellt werden. Eine Kontrolle ist mit folgender Kommandozeileneinane möglich: "java -version".
Das Manual kann hier gelesen werden.
Folgendes Material kann von dieser Seite geladen werden: