25 lines
1,005 B
Markdown
25 lines
1,005 B
Markdown
|
||
A (finite non-deterministic) automaton is a quintuple M = (Q,Act,q0,F,T), where:
|
||
- Q is the set of states
|
||
- Act is the set of actions
|
||
- q0 is the starting state
|
||
- F is the set of final states
|
||
- T is the transition relation (T ⊆ Q × Act × Q)
|
||
|
||
Automata Behaviour: language equivalence
|
||
(where L(M) is the set of all the sequences of input characters that bring the automaton M from its starting state to a final one)
|
||
|
||
>[!note] Language equivalence
|
||
>M1 and M2 are *language equivalent* if and only if L(M1)=L(M2)
|
||
|
||

|
||
By considering the starting states as also final, they both generate the same language, i.e.:
|
||
$$(20.(tea + 20.coffee))∗ = (20.tea + 20.20.coffee)∗$$
|
||
|
||
|
||
But, do they behave the same from the point of view of an external observer??
|
||

|
||
The essence of the difference is WHEN the decision to branch is taken
|
||
- language equivalence gets rid of branching points
|
||
- it is too coarse for our purposes!
|
||
|