AUTOMATA THEORY

NFA for strings starting with a or bb

This epsilon-NFA illustrates a language with alternative prefixes. It reads the first symbol at q0. An a moves to qa, while a b moves to q1, which needs a second b to reach qb. The two successful branches then merge into qf by epsilon, where the machine can consume any remaining symbols. The epsilon transitions mean the required prefix itself is enough for acceptance; no extra input is needed before qf. The drawing shows that acceptance depends on the beginning of the input rather than its end. Prefix languages are common in token recognition, command parsing and protocol dispatch, where the first few symbols choose a valid form.

UPDATED 2026-09-24
TYPEState
EXAMPLENFA for strings starting with a or bb
Make this diagram your own.

Open it in the AI editor with a prompt pre-filled — keep what works, change what doesn't.

CASE ANALYSIS

Scenario

Prefix alternatives

Key decisions

  • Branching prefix: q0 separates the a and bb alternatives.
  • Successful merge: qa and qb lead to one accepting continuation.
  • Suffix loop: qf accepts arbitrary remaining input after a valid prefix.

When to reuse this

Use a branch-and-merge automaton for a language defined by several allowed starting patterns.

FAQ

Frequently asked questions

What prefixes does the machine recognize?01
It recognizes inputs whose beginning is a or bb, followed by a binary suffix.
Why is there a separate q1 state?02
It records that the first b has been read and a second b is required.
Can the branches share one final state?03
Yes. Both branches express valid prefixes, so they can merge before consuming the rest of the input.
Open this example in the editor →

Tweak it with chat, export PNG/SVG, or fork it for your own use case.