Creating a new Automaton

To create a new pushdown automaton, look for the list of possible formal language types and click on Push-Down Automaton.

You will see a split screen with a drawing area on the left and an editing area to the right.

Creating & Editing States

The procedure for creating and editing states is the same as for finite automata.

Creating & Editing Transitions

The procedure for creating and editing states is very similar to the procedure for finite automata.

The difference is the format of the label. Each transition label has the form

input,top/push

where

  • input is a single input character, which may be any alphanumeric except 'Z'. By tradition, only numbers and lower-case numbers are used for the input.
  • top is the character to be matched on the top of the stack. These may be any alphanumeric character.
  • push is the string of characters to be pushed onto the top of the stack after top has been removed.

Shortcuts are also available:

  • @ denotes the empty string.
  • !x, in the input or top, means "any character except x".
  • ~ means "any character" when occurring in the input, and
    means "same as the input character" in the top or the push strings.