Nondeterministic Finite-state Automata

Description:

  • May have several possible next states for each pair of input value and state
  • A Nondeterministic finite-state automata :
    • consists of
      • : a finite set of states
      • : a finite input alphabet
      • : a transition function
        • assigns a next state set of states to each pair of state and input
        • such that
        • is the power set of S
      • an starting state,
      • a set of possible accepting final states,
        • also a subset of

NFA’s recognized language:

  • Let a string input to an NFA.
  • The first input symbol takes the starting state to a set of states
  • The next input symbol takes each of the states in to a set of new states.
    • Let be the union of these sets.
  • Repeat, at each stage, all states obtained using a state obtained at the previous stage and the current input symbol
  • The string is accepted if there is at least 1 final state in the set of all states using .
  • The language recognized by a NFA is the set of all strings recognized by this NFA.
  • theorem
    • If the language is recognized by a NFA , then is also recognized by a DFA
      • where (deterministic) is converted from (Non-deterministic)
      • ‘s states are created from combinations of possible states reached by ‘s states
        • with OR operation
        • combination states where each state can have multiple possible states, the new state of is all of those possible states.
    1. Q&A - find language recognized by NFA; question & answer
    1. Q&A - find a DFA recognized same language as the NFA; question, answer