Content deleted Content added
fix cite for 2nd "url=" by omit 1st as unneeded +access-date |
m →Formal definition: {{angbr}} {{mset}} |
||
(4 intermediate revisions by 3 users not shown) | |||
Line 1:
In [[automata theory]], the '''thread automaton''' (plural: automata) is an extended type of [[finite-state machine|finite-state automata]] that recognizes a [[mildly context-sensitive language class]] above the [[tree-adjoining grammar|tree-adjoining languages]].<ref name="eric"> {{cite
==Formal definition==
Line 16:
A '''thread store''' ''S'' is a finite set of threads, viewed as a partial function from ''U''<sup>*</sup> to ''N'', such that ''dom''(''S'') is [[closure (mathematics)|closed]] by [[prefix (computer science)|prefix]].
A thread automaton '''configuration''' is a triple
The '''initial configuration''' is
The '''final configuration''' is
A '''transition''' in the set Θ may have one of the following forms, and changes the current automaton configuration in the following way:
* '''SWAP''' ''B'' →<sub>''a''</sub> ''C'': consumes the input symbol ''a'', and changes the state of the active thread:
: changes the configuration from
* '''SWAP''' ''B'' →<sub>ε</sub> ''C'': similar, but consumes no input:
: changes
* '''PUSH''' ''C'': creates a new subthread, and suspends its parent thread:
: changes
* '''POP''' [''B'']''C'': ends the active thread, returning control to its parent:
: changes
* '''SPUSH''' [''C''] ''D'': resumes a suspended subthread of the active thread:
: changes
* '''SPOP''' [''B''] ''D'': resumes the parent of the active thread:
: changes
One may prove that δ(''B'')=''u'' for '''POP''' and '''SPOP''' transitions, and δ(''C'')=⊥ for '''SPUSH''' transitions.<ref>Villemonte (2002), p.1r-2r</ref>
Line 43:
{{Formal languages and grammars}}
[[Category:Models of computation]]
[[Category:Automata (computation)]]
|