Unit 1 & 4 Theory of Computation
NFA Graph — Click canvas to add states, drag to move
🎯

Double-click on canvas to add a state, or use the + button in the sidebar

Or to get started

Subset Construction Algorithm

Step-by-Step Log

Step 0
Ready

Click "Next Step" to begin the subset construction, or "Run All" to see the complete conversion.

Subset Construction Table

Run the conversion to see the transition table

Resulting DFA

Scroll to zoom · Drag to pan

The DFA will appear here after conversion

DFA Minimization — Table Filling Algorithm

Minimization Log

Step 0
Ready

Click "Next Step" to begin the table-filling (Myhill-Nerode) minimization algorithm.

Distinguishability Table

Run minimization to see the table

Equivalence Classes

Equivalent state groups will appear here

Minimized DFA

Scroll to zoom · Drag to pan

The minimized DFA will appear here

Test Input String

Quick tests:
?
Awaiting input
Enter a string and click Run

DFA Simulation

🔬

Test a string to see the DFA simulation

Execution Trace

Run a string to see the trace

Test History

Test results will appear here

Pushdown Automaton Simulator

PDA Definition

States
Input Σ Stack Γ Start Start Stack Accept

Transition Function

FromInputStack TopToPush

Add Transition

Add State / Alphabets

Simulate

Quick:

Current Configuration

State
Remaining Input
Stack (top → bottom)
Stack empty

Computation Trace

#StateRemaining InputStack
Run a string to see the trace