lib/automata/pda.rb
def has_transition?(state, symbol)
      return false unless @transitions.has_key? state
      if @transitions[state].has_key? symbol
        actions = @transitions[state][symbol]
        return false if actions['pop'] && @stack.last != actions['pop']
        return true
      else
        return false
      end
    end
def has_transition?(state, symbol)
      return false unless @transitions.has_key? state
      if @transitions[state].has_key? symbol
        actions = @transitions[state][symbol]
        return false if actions['pop'] && @stack.last != actions['pop']
        return true
      else
        return false
      end
    end
def has_transition? ( state , symbol ) return false unless @transitions . has_key? state if @transitions [ state ] . has_key? symbol actions = @transitions [ state ] [ symbol ] return false if actions [ 'pop' ] && @stack . last != actions [ 'pop' ] return true else return false end end
Determines whether or not any transition states exist
 given a beginning state and input symbol pair.

 @param (see #transition)
 @return [Boolean] Whether or not a transition exists.
Determines whether or not any transition states exist given a beginning state and input symbol pair .