Interactive canvas-based simulator for finite automata, pushdown automata, Mealy machines, Moore machines, and Turing machine workflows.
- Create start / normal / accept states on a zoomable canvas
- Add transitions with symbol-level labels
- Save selected automata, reopen for editing, move, and export/import JSON
- Import JSON with stronger backward compatibility for legacy snapshots
- Convert a selected NFA to DFA from the workbench menu
- Generate GNFA and CFG artifacts from selected FA
- View transition table, regex view, and run input tests
- Create PDA start and normal states on canvas
- Create PDA transitions with format
input,pop/push(example:a,A/BA,ε,Z/Z) - Save and inspect PDA cards with:
- transition table
- automaton summary
- input execution test
- side stack panel showing stack changes while the input is processed
- Create TM states: normal, final (accept), and reject
- Create TM transitions with format:
- single tape:
read/write,move(example:0/1,R) - multi tape:
segment;segment;...where each segment isread/write,move(example for 2 tapes:0/1,R;_/_,N)
- single tape:
- Supported moves per tape:
L,R,N - Nondeterministic TM transitions are supported (multiple outgoing transitions for the same read tuple)
- Multi-tape TM transitions are supported (tape count inferred from transition labels)
- TM transition-only validation between TM states
- Save and inspect TM cards with:
- transition table (
State, per-tapeRead/Write/Move,Next) - 7-tuple summary (
Q, Γ, b, Σ, δ, q0, F) - input execution test with branch exploration (accept/reject)
- transition table (
- Create Mealy machine states on canvas with machine-specific state family metadata
- Define transitions with Mealy format:
input/output- example:
a/0,b/1
- example:
- Validate transitions through machine-aware editor rules for Mealy workflows
- Save, reopen, edit, move, export, and import Mealy snapshots
- Run input simulations directly from the Saved FA card panel
- Inspect Mealy output sequence in a dedicated output area under test input
- Generate grammar-view artifacts from selected Mealy machines through the tools menu
- Create Moore machine states on canvas and keep output bound to state identity
- Define state outputs using Moore labeling conventions supported by the workbench
- Use Moore-specific transition editing while preserving machine-family constraints
- Save, reopen, edit, move, export, and import Moore snapshots
- Run input simulations directly from the Saved FA card panel
- Inspect Moore output sequence in a dedicated output area under test input
- Generate grammar-view artifacts from selected Moore machines through the tools menu
- For FA, TM, and PDA cards, entering a test input highlights traversed transitions on canvas
- Highlights are scoped to the currently selected saved automaton
- PDA cards additionally show per-step stack activity in the side stack panel
- Mealy/Moore cards include clearer output-region rendering during input tests
Current TM implementation is:
- supports single-tape and multi-tape transitions
- supports deterministic and nondeterministic branching
- single-symbol read/write per tape segment
- halting by accept state, explicit reject state, or undefined transition
- input is placed on tape 1; additional tapes start blank
- Next.js 16
- React 19
- TypeScript 5
- Tailwind CSS 4
npm installnpm run dev