A simple model is due to W Ross Ashby. I call it a Mechanism: it has states and transitions that may occur and change the states. Each state helps determine the next state. There are a set of valid transitions. Each defines a map from the current state to the next one. A deterministic mechanism has a single transition function determining an unique next state when given the current state.
The next complication (again following W Ross Ashby) is the State+Input+Transition+Output system or SITO. Here the system receives a string of inputs and produces a string of outputs. The next state is determined by the current input and state. The output depends solely on the current state and input.
Automata are rather like SITO systems except that they have no output. Instead they classify the input sequence as acceptable or not. When the system enters a special set of states then the input is accepted. These are useful in the theory of languages. Transducers (Again Ross Ashby's term) has input, state and output, but the output depends solely on the current state. This is the equivalent of a ?? machine in computer science text books.
[ General Systems Theory ] is another approach to dynamic modelling.
All these models, so far allow the number of states to be infinite and to have any structure. Classical models: FSA, TM, PDA etc limit these.
I plan some notes on a structured model of automata and a section will be added on Buchi Automata that model properties that hold on infinite input strings.
State
A system, machine, automaton, device, component, object typical is in
one of a number of states at any given time. The set of States determines
the power of the machine, system, automaton: more states give more power.
Notice that we can construct a set of states by combining other sets: for example we can imagine a finite program with 3 counters:
We can add special states (an initial state for example) and special subsets of a set of States (final states for example).
Labeled Transition Systems
THe most general model: a set of states and some labels. Each label
may change that state. Some changes happen with no visible cause or effect
and these are labelled τ.
[click here
if you can fill this hole]
| Example Mechanism 1 | ||
|---|---|---|
| State | 0 | 1 |
| Transition[1] | 0+>1 | 1+>0 |
| Transition[2] | 0+>0 | 1+>1 |
| Example Mechanism 2 | |
|---|---|
| State | Nat0 |
| Transition[1] | s+>2*s |
| Transition[2] | s+>2*s+1 |
| Example SITO 1 | ||
|---|---|---|
| Input\State | 0 | 1 |
| 1 | 1/0 | 0/1 |
| 0 | 0/0 | 1/1 |
This implicitly defines can_change_to, Monoid, etc etc in Mechanism.
Suppose we are interested in a property of some states we could model it as the subset P of states where it holds:
Notice that AX(P) and EX(P) are defined to be sets of States and so properties. So we can write AX AX(P) -- P must be true in to steps. EX AX P -- P can enter a state where P must become true.
From these we can define the 6 "modes" used in the Computational Tree Logic:
If the system is finite then there are quite efficient algorithms and tools for doing the above calculations.
if you can fill this hole]
. . . . . . . . . ( end of section General Systems Theory) <<Contents | End>>
Automata Theory
This implicitly defines can_change_to, Monoid, etc etc in Mechanism.
[click here
if you can fill this hole]
if you can fill this hole]
if you can fill this hole]
if you can fill this hole]
. . . . . . . . . ( end of section Automata Theory) <<Contents | End>>
Eilenberg's ultimately abstract model
[click here
if you can fill this hole]
Transducers
[click here
if you can fill this hole]
Buchi Automata
Buchi automata inherit all the structure of finite non-deterministic automata: inputs, states,
iniital_state, final_states, and transitions. However the condition for accepting an infinite string
of symbols is defined and effectively over-rides the definition for finite strings. A normal
automata accepts a finite string by entering a final state at the end of the string. An infinite
string -- by definition, has no end. So, an infinite sequence of inputs is accepted when it allows
the automata to enter the set of final states infinitely often.
Examples
A1:=the BUCHI(input:={a,b,c}, states:={q0,q1}, initial:=q0, final:={q0}, delta:={(q0,b,q0),
(q0,c,q0), (q0,a,q1), (q1,a,q1), (q1,c,q1), (q1, b, q0)} ).
A1.language=after any occurence of b there is an occurrence of b.
A1_bar:=the BUCHI(INPut:={a,b,c}, states:={q0,q1}, initial:=q0, final:={q1}, delta:={(q0,b,q0),
[click here
if you can fill this hole]
(q0,c,q0), (q0,a,q0), (q0,a,q0), (q1,a,q1), (q1,c,q1)} ).
A2:=the BUCHI(input:={a,b,c}, states:={q0,q1,q2}, initial:=q0, final:={q0,q1,q2},
delta:={(q0,b,q0), (q0,c,q0), (q0,a,q1), (q1,a,q1), (q1,c,q2), (q1, b, q2), (q2,c,q1), (q2,b,q1)} ).
Results
Buchi recognisable iff finite union of sets U.V^ω where U and V are regular.
Buchi recognisable is closed under union, complement, intersection and regular prefix.
. . . . . . . . . ( end of section Automata on Infinite Words) <<Contents | End>>
. . . . . . . . . ( end of section Structured Automata) <<Contents | End>>
. . . . . . . . . ( end of section Automata and System Theory) <<Contents | End>>
Notes on MATHS Notation
Special characters are defined in
[ intro_characters.html ]
that also outlines the syntax of expressions and a document.
Proofs follow a natural deduction style that start with assumptions ("Let") and continue to a consequence ("Close Let") and then discard the assumptions and deduce a conclusion. Look here [ Block Structure in logic_25_Proofs ] for more on the structure and rules.
The notation also allows you to create a new network of variables and constraints. A "Net" has a number of variables (including none) and a number of properties (including none) that connect variables. You can give them a name and then reuse them. The schema, formal system, or an elementary piece of documentation starts with "Net" and finishes "End of Net". For more, see [ notn_13_Docn_Syntax.html ] for these ways of defining and reusing pieces of logic and algebra in your documents. A quick example: a circle = Net{radius:Positive Real, center:Point}.
For a complete listing of pages in this part of my site by topic see [ home.html ]
Notes on the Underlying Logic of MATHS
The notation used here is a formal language with syntax
and a semantics described using traditional formal logic
[ logic_0_Intro.html ]
plus sets, functions, relations, and other mathematical extensions.
For a more rigorous description of the standard notations see