The request
“Draw a cutthroat pool state diagram with both players active, turns changing on misses or fouls, win states when an opponent's group is cleared, and self-loops after a win.”
Then tryAdd a break state before player 1 starts.Change the win condition to require eight balls.
What is in this drawing
Read the decisions behind it.
01
Each player starts with exactly one ball to keep the state space finite and deterministic.
02
Accepting states (P1_Wins, P2_Wins) are sinks with self-loops for any remaining input.
03
Transitions distinguish pocket_own (eliminates yourself, opponent wins if they still have a ball) vs. pocket_opponent (eliminates opponent, you win if you still have a ball).
Use when teaching finite automata with a concrete, game-based example that illustrates deterministic transitions and accepting states without requiring a final/terminal node.
More like this