FSA Applet Instructions

Please send suggestions, corrections, and bug reports to Rocky Ross.
Modes:

Edit Mode

Allows the contents of the FSA panel to be modified. The applet starts in this mode.

Run Mode
Allows the current finite state automaton (fsa) to run on input strings provided by the user.

To switch between modes
Click on the Edit or Run radio buttons at the top of the Control panel.

Editing (Edit Mode):

To add a state
Click the right mouse button in an unoccupied area of the FSA panel. If the pointer is not too close to an existing state, a new state will appear. If the mouse is dragged while the right button is down, the new state will move with the pointer until the button is released.

To cancel the addition of a new state, press the Esc key before releasing the mouse button.


To move a state
Click the right mouse button within the state. While holding down the button, drag the pointer to a new location.

To modify or delete a state
Click on the state. An Edit State panel will appear in the upper right corner of the applet.

To change the state's status as a final or initial state, click on the Initial or Final checkboxes at the top of the panel.

To delete the state, click the Delete button at the bottom of the Edit State panel.


To add a transition
Click on a state with the left mouse button and drag the mouse pointer out of the state while holding down the button. A transition arrow will appear near the pointer.

To make a loop transition (a transition which returns to the same state), move the pointer away from the state a small distance and release the button. A loop transition can be placed at any angle around the state.

To make a transition to another state, move the mouse pointer inside the destination state and release the mouse button. The transition arrow will become straight and attach itself to the destination state.

(Note: Only one transition arrow is allowed between a pair of states, but more than one symbol can be assigned to a transition arrow. See below for more details.)

To cancel the addition of a new transition, press the Esc key before releasing the mouse button.

If a new transition is not attached to a destination state when the mouse button is released, the transition will be deleted.


To move a transition
Click the right mouse button within the arrowhead of the transition. Move the pointer to the new destination state for the transition and release the mouse button. If the transition is not attached to a destination node when the mouse button is released, the transition will be deleted.

To modify or delete a transition
Click on the arrowhead of the transition. An Edit Transition panel will appear in the upper right corner of the applet.

To change the symbol(s) associated with the transition, edit the contents of the Transition Label list at the top of the panel. To add a symbol or remove a symbol, click on that symbol in the list. There are three buttons below the list which will select three commonly used ranges of symbols: digits (0-9), lowercase letters (a-z) and uppercase letters (A-Z).

To delete the transition. Click the Delete Transition button at the bottom of the panel.


To load a sample fsa
If no components in the FSA panel are selected (highlighted in red), there will be a File panel in the upper right corner of the applet. Use the dropdown menu near the top of the panel to select a sample fsa to load. Once the fsa has loaded, it can be modified or run like normal.

If one of the components in the FSA panel is selected, it can be deselected by click on an unoccupied area of the FSA panel.


To clear the FSA panel
Make the File panel appear by clicking on an unoccupied area of the FSA panel. (This only needs to be done if a component in the FSA panel is selected.) Press the Clear button on the File panel to remove all components from the FSA panel.

Running (Run Mode):

Stepping
Stepping is turned on by default. When stepping is on, the fsa will halt after each transition until the user clicks on the Step button. To turn stepping on or off click on the Stepping checkbox on the Control panel.

To specify an input string
Enter a string into the Input String text box on the Control panel. Press the Reset button on the Control panel to initialize the fsa for running on the new input string.

To start the execution of an fsa
Press the Start button on the Control panel.

To suspend and resume the execution of an fsa
Press the Suspend button on the Control panel to suspend the execution of the fsa. The Suspend button will become a Resume button. To resume, press this button again.

To reset the fsa
Press the Reset button at the bottom of the Control panel. The fsa will return to its initial state and the input string will be set to the contents of the Input String text box.

Some Java(tm) classes used in this applet are Copyright (c) 1996 Sealevel Software, Inc.
Some Java(tm) classes used in this applet are Copyright (c) 1996 Jerry Ablan and Sams.net Publishing.

Last modified: Fri Nov 8 17:17:31 MST