Arguably the only ambiguity in a Varphi program is the starting state. How is the state which the Turing machine starts with determined?
The "Top-Left" Rule is a rule that can be applied to determine the starting state of any Varphi program. Simply select the state located at the top-left corner of the program. For example, suppose your program looks like this:
Then, the starting state is q0
.
Input tapes must include at least one tape cell with a tally. If not, a runtime error will be thrown.
A standard that is followed by Turing machine developers is to make the initial position of the head be the leftmost tally on the tape. This convention is adopted by Varphi. The leftmost tally is guaranteed to exist by the "At Least One Tally" Rule.