Howto use Alan


by the Odd Project Team,

Daniel Neuber
Dominik Seichter
Oliver Pahl

v, 29 May 2005


This document gives an overview of how to use Alan. If you search for detailled information, have a look at the more extensive documentation which you can find in the data directory of the Alan-package.

1. Introduction

2. Creating a Turing Machine with Alan

3. Menu elements


1. Introduction

Alan is a Turing Machine simulator. We have the tuple including the transition function. Both can be specified in the according input fields. In this version of Alan, we have only one tape. But in the near future, we want to add the capability to work with more than one.

This program is primarly meant for educational purposes. Therefore you can add comments in the corresponding input field. Unfortunately, you can only add ASCII texts, but we want to add HTML functionality or a TeX renderer so you have a nice and professional documentation for your Turing Machine.


2. Creating a Turing Machine with Alan

After starting Alan, you have a Turing Machine ready for use. This is a default Turing Machine we have chosen so you can start using Alan directly. the default Turing Machine recognizes all tape inputs in the form 0^n1^n.

If you want to make your own Turing Machine go to File->New and you can start creating your Turing Machine from scratch. First make the inputs for the tuple. Gamma holds the tape alphabet. Write all symbols in this field (without any white spaces or separators) which should be recognized by Alan as tape symbols. Sigma, which is a subset of Gamma, is the input alphabet (here, you should not add white spaces or separatos, too). Then, specify your initial State and your final states. You can define more than one final states by separate them with a comma. At last, the tape input string.

After you have defined your Turing Machine tuple you ready to create your transition function. There are five input fields for a transition function element. You have to define the actual state and the next state, the actual character and the character which should be written to the tape. And you can define the direction. Push Add to put the new transition function element to the list.

Please fill out the description when you plan to give your Turing Machine to others. So they can determine what your Turing Machine will do.

After you have filled out all the necessary input fields you can push Start to get Alan start working. If you filled out everything correctly, you should see both a textual and a graphical output on the right side.


3. Menu elements

name of menu element description
File Contains the file handling functionality
New Will clear all input fields so you can define a new Turing Machine.
Open Here you can open a Turing Machine which is saved as a XML document.
Save Save the current Turing Machine. If your current Turing Machine has no filename, you have to specify one.
Save As... Save the current Turing Machine under a specified filename.
Exit Quit Alan. If you have unsaved changes, you will be asked if you want to save them befor Alan quits.
Action Here you find actions you can make
Stop Stops the Turing Machine and sets the actual state to the initial state.
Pause Holds on the Turing Machine and leaves the actual state at the actual position.
Start Starts the Turing Machine and goes on automatically.
Step Runs the next step of your Turing Machine.
Help As you already reading this document. We assume you already know for what this menu element is meant to be.
Contents Shows this short documentation.
About Shows a nice about dialog