Day three of theory of computation
1. Non-deterministic Finite Automata (NFA) Unlike a DFA, an NFA allows a machine to explore multiple paths simultaneously. Definition: For a given state and input symbol, an NFA can transition to zero, one, or multiple states . Acceptance: A string is accepted if at least one possible path leads to a final state. Flexibility: NFAs are generally easier to construct than DFAs because you don't need to define transitions for every possible input or worry about "dead states". 2. NFA with Epsilon Transitions ( 系 epsilon 饾湒 -NFA) An 系 epsilon 饾湒 -NFA introduces the epsilon ( 系 epsilon 饾湒 ) move , which allows the machine to change states without consuming any input symbol. 系 epsilon 饾湒 -Closure: This is a critical Day Three concept. It is the set of all states reachable from a specific state using only 系 epsilon 饾湒 transitions (including the state itself). Use Case: 系 epsilon 饾湒 -NFAs are highly useful for combining smaller machines (e.g., when ...