<p>This chapter describes the representations used in this package for finite automata and some functions to determine information about them.</p>
<p>We have to remark that the states of an automaton are always named <span class="SimpleMath">1,2,3,...;</span> the alphabet may be given by the user. By default it is <span class="SimpleMath">{a,b,c,...}</span> (or <span class="SimpleMath">{a_1,a_2,a_3,...}</span> in the case of alphabets with more than <span class="SimpleMath">26</span> letters).</p>
<p>The transition function of an automaton with <span class="SimpleMath">q</span> states over an alphabet with <span class="SimpleMath">n</span> letters is represented by a (not necessarily dense) <span class="SimpleMath">n× q</span> matrix. Each row of the matrix describes the action of the corresponding letter on the states. In the case of a <em>deterministic automaton</em> (DFA) the entries of the matrix are non-negative integers. When all entries of the transition table are positive integers, the automaton is said to be <em>dense</em> or <em>complete</em>. In the case of a <em>non deterministic automaton</em> (NFA) the entries of the matrix may be lists of non-negative integers. <em>Automata with <span class="SimpleMath">ϵ</span>-transitions</em> are also allowed: the last letter of the alphabet is assumed to be <span class="SimpleMath">ϵ</span> and is represented by @.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; Automaton</code>( <var class="Arg">Type</var>, <var class="Arg">Size</var>, <var class="Arg">Alphabet</var>, <var class="Arg">TransitionTable</var>, <var class="Arg">Initial</var>, <var class="Arg">Accepting</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p><code class="code">Type</code> may be <code class="code">"det"</code>, <code class="code">"nondet"</code> or <code class="code">"epsilon"</code> according to whether the automaton is deterministic, non deterministic or an automaton with <span class="SimpleMath">ϵ</span>-transitions. <codeclass="code">Size</code> is a positive integer representing the number of states of the automaton. <code class="code">Alphabet</code> is the number of letters of the alphabet or a list with the letters of the ordered alphabet. <code class="code">TransitionTable</code> is the transition matrix. The entries are non-negative integers not greater than the size of the automaton. In the case of non deterministic automata, lists of non-negative integers not greater than the size of the automaton are also allowed. <code class="code">Initial</code> and <code class="code">Accepting</code> are, respectively, the lists of initial and accepting states.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">aut:=Automaton("det",4,2,[[3,,3,4],[3,4,0,4]],[1],[4]);</span>
< deterministic automaton on 2 letters with 4 states >
<span class="GAPprompt">gap></span> <span class="GAPinput">Display(aut);</span>
| 1234
----------------- a | 334 b | 344
Initial state: [ 1 ]
Accepting state: [ 4 ]
</pre></div>
<p>The alphabet of the automaton may be specified:</p>
<p>Instead of leaving a hole in the transition matrix, we may write a <code class="code">0</code> to mean that no transition is present. Non deterministic automata may be given the same way.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">ndaut:=Automaton("nondet",4,2,[[3,[1,2],3,0],[3,4,0,[2,3]]],[1],[4]);</span>
< non deterministic automaton on 2 letters with 4 states >
<span class="GAPprompt">gap></span> <span class="GAPinput">Display(ndaut);</span>
| 1234
----------------------------------------- a | [ 3 ] [ 1, 2 ] [ 3 ] b | [ 3 ] [ 4 ] [ 2, 3 ]
Initial state: [ 1 ]
Accepting state: [ 4 ]
</pre></div>
<p>Also in the same way can be given <span class="SimpleMath">ϵ</span>-automata. The letter <span class="SimpleMath">ϵ</span> is written <code class="code">@</code> instead.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; IsAutomaton</code>( <var class="Arg">O</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>In the presence of an object <var class="Arg">O</var>, one may want to test whether <code class="code">O</code> is an automaton. This may be done using the function <code class="code">IsAutomaton</code>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; IsNonDeterministicAutomaton</code>( <var class="Arg">aut</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns <code class="keyw">true</code> when <code class="code">aut</code> is a non deterministic automaton and <code class="keyw">false</code> otherwise.</p>
<<divl version="1.0" encoding="UTF-8"?>
<p> <code class""></code>when< class="code">aut</code> is an <span class="SimpleMath">ϵ</span>-automaton and <code class="keyw">false</code> otherwise.</p>
<java.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 26
<span class">gt;</span> <span class="GAPinput">z:=Automaton("epsilon",2,2,[[[1,2],],[[2],[1]]],[1,2],[1,2]);;</span>
<span class="GAPprompt">gap></span> script="manual.s"=textjavascript"</>
true
java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 12
<2.- java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 21
< class"ChapSects">ahref="chap2.html#X811E5FC2849C5644">2 <span class="Heading">Finite Automata</span></a>
< changes, for example using <em>copy/paste/m> the use of the function <code class="code">String</code> (possibly followed by < class=code"Print<code>) may be useful.</p>
<div class>
=GAPprompt"gapgt;span> <span class="GAPinput">x:=Automaton("det",3,2,[ [ 0, 2, 0 ], [ 0, 1, 0class""<br/<spanclass=""& <span><a href="chap2.html#X83CCDEF9814F1E6D">2.1-2 C"< ="">;&java.lang.StringIndexOutOfBoundsException: Range [59, 58) out of bounds for length 146
<span class="span class="ContSS"><br class="> <span< hrefc.#EC5331790D6022>2.-5 <>/span "(\det",3,"ab\, [0 0 ] 0 10] ,[3 ];
<panjava.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 86
Automaton("det"<ivclass"> =tocline"span =nocss"&;/><a java.lang.StringIndexOutOfBoundsException: Range [85, 84) out of bounds for length 171
</pre></div>
<p><a <span cl=><r/< class=""&;nbsp<span =chap2.java.lang.StringIndexOutOfBoundsException: Range [86, 85) out of bounds for length 146
<h5>2.1-7 RandomAutomaton</h5>
<div class="unc><table class"func"width=100"><r< class"">code classfunc"#8227RandomAutomaton</code>( <var class="Arg">Type</var>, <var class="Arg">Size</var>, <var class="Arg">Alphabet</var> )</td><td class="tdright">( function span ""><br/<span class=nocss"&bsp&;/span< href=chap2.#X80689F1480F9D959.2- </a</java.lang.StringIndexOutOfBoundsException: Range [147, 146) out of bounds for length 147
<p>Given the <var class="Arg">Type</var>, the <var class="Arg">Size</var> (i.e. the number of states) and the <var class="Arg">Alphabet</var> (a positive integer or a list), returns a pseudo random automaton/span>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">RandomAutomaton("det",5,"ac");</span>
< deterministic automaton on 2 letters with 5 states >
<span class="ContSS"><br /><span class="ocss">nbsp; </span><a href="chap2.html#X8356E41086482483">2.4-1 IsDenseAutomaton</a></span>
|12 java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
------------ 3
c | 23
Initial span class="ContSS"><br /><span class=
Accepting states: [ 3, 4 ]
<span class="GAPprompt">gap>span>
&; on3 with gt
< =GAPprompt"gapgt;/span <spanclass=""("","abc)<span
< epsilon automaton =>br;;<spana">.53java.lang.StringIndexOutOfBoundsException: Range [130, 128) out of bounds for length 139
<span class="GAPprompt">gap></span> <span class="GAPinput">RandomAutomaton("epsilon",2,2);</span>
< epsilon automaton on3 letters 2 statesgt
< class"">>/pan> class="GAPinput>isplay(last</java.lang.StringIndexOutOfBoundsException: Range [83, 82) out of bounds for length 83 2
---------------------- a | [ 1, 2 ] b | [ 2 ] [<pan class="ontSS"<br />span ="ocss"&bsp; <span><a href="chap2.html#X7FA7DF6D87D63D67">2.5-8 NormalizedAutomaton</a></span>
@ | [ 1, 2 ]
Initial state: [ 2 ]
Accepting states: [ 1, 2 ]
<pan class="GAPprompt">gap></span> <span class="GAPinput">a:=RandomTransformation(3);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">b:=RandomTransformation(3);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">aut:=RandomAutomaton("det",4,[a,b]);</span>
&java.lang.StringIndexOutOfBoundsException: Range [55, 3) out of bounds for length 60
</pre>/>
<p>In this section we describe the functions used to access the internals java.lang.StringIndexOutOfBoundsException: Range [0, 76) out of bounds for length 12
<p><a id="X7A34B47778B50FFE>This chapter describes the representations used in this package for finite automata and some functions to determine information about them.</p>
<h5>2.2-1 AlphabetOfAutomaton</h5>
<div class="func"><table class="func" width="100%"><tr><pWe have toremark that thestates anautomatonare alwaysjava.lang.StringIndexOutOfBoundsException: Range [70, 69) out of bounds for length 355
<java.lang.StringIndexOutOfBoundsException: Range [3, 2) out of bounds for length 96
<div class="func"><java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
<p>Returns the alphabet of automaton <code class="code">aut</code>
<<h5>.1-1 Automaton<h5
<span class="GAPprompt">gap></span> <span class="GAPinput">a:=RandomAutomaton("det",5,"cat");</span>
< deterministic automaton on 3 letters with 5 states >
<span class="GAPprompt">java.lang.StringIndexOutOfBoundsException: Range [0, 27) out of bounds for length 0 3
< class=G">ap></span> <span class="GAPinput">AlphabetOfAutomatonAsList(a);</span> "cat"
<span">a:=RandomAutomaton("det",5,20;</span>
< deterministic automaton on 20 letters with 5 states >
<span class="GAPprompt">gap></span> <span class="GAPinput">AlphabetOfAutomaton(a);</span> 20 span =java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 98 "abcdefghijklmnopqrst"
<span class="GAPprompt">gap></span> <span class="GAPinput">a:=RandomAutomaton("det",5,30);</span>
< deterministic b | 3 java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
<pan ="GAPprompt"gap></span> <span class="GAPinput">AlphabetOfAutomaton(a);</span> 30
<span"GAPprompt"gapg</span><span class=GAPinput">AlphabetOfAutomatonAsList(a);</span>
[ "a1", "a2", "<pre> "a12", "a13", "a14",<span class="GAPprompt">gap></span> <span class="GAPinput">aut:=Automaton("det",4,"01",lt; deterministic automaton on 2 letters with 4 states > "a22", "a23", "a24", "a25", "a26", "a27---------------
</pre><>
<p><a id="X872BB42A81E4D0E7" name="X872BB42A81E4D0E7"> state: [ java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
<h5>2.2-3 TransitionMatrixOfAutomaton</h5>
<div class="func<pan class="GAPprompt"gapgt<span> span class="GAPinput">ndaut:=Automaton("nondet",4,2,[[3,[1,2],3,0],[3,4,0,[2,3&t nondeterministic automaton on2 etters with4 states&t;
<p>Returns the transition matrix of automaton <code java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 34
<div =">pre
<"java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 124
<span state: [ 4 ]
[ [ 3, 0, 3, 4 ], [ 3, 4, 0, 0 ] ]
</pre>/>
<p>a id"X7B5C3CFA83FF80EA"name="">/a></p>
<h5>2.2-4 InitialStatesOfAutomaton</h5>
<div class="func"><table class="<epsilon automatonon letters with3states >
<p>Returns the initial states of automaton <code class="code">aut</code>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft< automaton 2with 16states &java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
<p>Sets the initial states java.lang.StringIndexOutOfBoundsException: Range [0, 29) out of bounds for length 23
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; FinalStatesOfAutomaton</code>( <var class=true p the final states of automaton code class=code></ode./>
<h5>2.2-7 java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 12
<
<p>Sets the final states of automaton <code class="code">aut</code>. <code java.lang.StringIndexOutOfBoundsException: Range [0, 80) out of bounds for length 0
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">aut:=Automaton("det",4,2,[[3,,3,4],[3,4,0,]],[1],[4]);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">FinalStatesOfAutomaton(aut);</
[ span""gap<spanspan class"">:java.lang.StringIndexOutOfBoundsException: Range [75, 74) out of bounds for length 136
<class="">&;/spanspanclass=""SetFinalStatesOfAutomaton,2);</spanjava.lang.StringIndexOutOfBoundsException: Index 102 out of bounds for length 102
<span class="GAPprompt">gap></span> <span class="GAPinput">FinalStatesOfAutomaton(aut);</span>
[ 2 ]
</pre></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><p>Returns <code class="keyw">true</code> when <code class="code">aut</code> isjava.lang.StringIndexOutOfBoundsException: Range [107, 106) out of bounds for length 177
<the ofstates automaton <code class="code">aut</code>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; IsRecognizedByAutomaton</code>( <var class="Arg">A</var>, <varclass="Arg">w</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>The arguments are: an automaton <var class="Arg">A</var> and a string (i.e. a word) <var class="Arg">w</var> in the alphabet of the automaton. Returns <code class="code">true</code> if the word is recognized by the automaton and <code class="code">false</code> otherwise.</p>
<<ajava.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 62
<a [1, ]
<div class="func"><table class="func" width="Initial state: [ 2java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
<p>The argument is a deterministic automaton. Returns <code class="keyw">true</code> when each letter of the java.lang.StringIndexOutOfBoundsException: Index 111 out of bounds for length 97
<div class="example"><pre>
<span class="GAPprompt">gap></java.lang.StringIndexOutOfBoundsException: Range [33, 37) out of bounds for length 12
<span class="GAPprompt">gap></span> <span class="GAPinput">IsPermutationAutomaton(x);</span>
true
</pre></div>
<p><a id="java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 0
<h5>2.4-4 IsInverseAutomaton</
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; IsInverseAutomaton</code>( <var class="Arg">aut</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>The argument is a deterministic automaton. Returns <code class="keyw">true</code> when each letter of the alphabet induces an injective partial function on the vertices and <code class="keyw">false</code> otherwise.</p>
<><aid=X8044B24B82C59BBF"name=X8044"<>/
<span class="GAPprompt"><h5>.2AlphabetOfAutomatonAsListh5java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
<span java.lang.StringIndexOutOfBoundsException: Range [80, 11) out of bounds for length 91
true
</pre></div>
<p>Frequently an inverse automaton is thought as if the inverse edges (labeled by formal inverses of the letters of the alphabet) were present, although they are usually not explicited. They can be made explicit using the function <code class="code">AddInverseEdgesToInverseAutomaton</code></p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&an style='color:green'>#8227; AddInverseEdgesToInverseAutomaton</code>( <var class="Arg">aut</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>The argument is an inverse automaton over the alphabet <span class="SimpleMath">{a,b,c,...}</span>. Returns an automaton with the inverse edges added. (The formal inverse of a letter is represented by the corresponding capital letter.)</p>
<>2.- java.lang.StringIndexOutOfBoundsException: Range [33, 31) out of bounds for length 36
<div class="funcpthe transition of automaton < =c"aut</><pjava.lang.StringIndexOutOfBoundsException: Index 80 out of bounds for length 80
<p><span =""gap;/pan><"APinput>ut=(det",,,[,3,],[34,0,],1,4];<span>
<div class="example"><[ [ 3, 0, 3, 4 ], [ 3, 4,] java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
spanclass=java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 135
< class"java.lang.StringIndexOutOfBoundsException: Range [31, 22) out of bounds for length 94
true
</pre></div>
class"func"><tableclass=func width=100"<tr><tdclass"dleft><odeclass"func">‣ CopyAutomaton</code>( <var class="Arg">aut</var> )</td><td class="tdright">( function )</td></tr></table></div>
is a of automaton < class"rg>utv.<p>
h5>.- java.lang.StringIndexOutOfBoundsException: Range [37, 33) out of bounds for length 38
<div class="func"><table class="func" width="100%"><tr><td class="<spanclass="GAPprompt"gapgt;/><spanclass">=Automaton""42[3,,4],[340][][];/>
<>codeclass"code>aut<code>is automaton.Ifis varclass"Arg"aut/> returns completion withanull ) varclass=Arg> var "rg>and java.lang.StringIndexOutOfBoundsException: Range [283, 282) out of bounds for length 300
<=GAPpromptgt;span < =G">InitialStatesOfAutomaton(aut);</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">aut:=Automaton("det",4,2,[[3,,3,4],[2,4,4,]],[1],[4]);;</span>
<spanh5>26java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 37
false
<span class="GAPprompt">gap></span> <span class="GAPinput">y:=NullCompletionAutomaton(aut);;Display(y);</span>
| 12345
--------------------
| 35345
b | 24 <panclass"APprompt">>/> span class="APinput>inalStatesOfAutomaton()</pan>
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 0
Accepting state
</pre></div>
pThestateadded is a<>sink state</m i..itisastate <span class=SimpleMath"q<span>whichis initial nor accepting and for all letter <span class="SimpleMath">a</span> in the alphabet of the automaton, <span class="SimpleMath">q</span> is the result of the action of <span class="SimpleMath">a</span> in <span class="SimpleMath"><span.(Noticethat reading a word, one does not go out of a sink state.)</p>
p< ="F052EC81135807"name""<a>/>
h>2.5 <h5
d =t class"" width100%"tr<d ""<code class=func">
<p>Computes the list of all sink states of span class="GAPprompt">gap></span> <span>(aut;/pan
<div>.2-8 NumberStatesOfAutomaton</h5>
<span java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 90 out of bounds for length 90
[ ]
<<p>Returns numberof automaton <class""aut<./>
<span classjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
[3 java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
</java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
<p><a id="java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 0
<h5>2.5-4 RemovedSinkStates<
<div class="func"><table class="func" width="java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
<Removesall the automaton <class""><var>.p
<div class=example>pre
<span class="GAPprompt">gap></span> <<span class="GAPprompt">gap></span> <span"GAPinput"Size(Set([yxx))/span>
| 123
-
a |
b | 123
Initial state: [ 1 ]
Accepting state: [
< "APpromptgap;/<java.lang.StringIndexOutOfBoundsException: Range [45, 44) out of bounds for length 106
< deterministic automaton on 2 lettersjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
| 12
------< class=""<table =func =100%>tr< =t>codeclass">#8227; <code> <var =Arga<var <td>td java.lang.StringIndexOutOfBoundsException: Range [169, 168) out of bounds for length 225
a | 2
java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
div class""<>
Accepting state: [ 2 ]
</pre></div>
<java.lang.StringIndexOutOfBoundsException: Range [1, 0) out of bounds for length 0
<div class="func"><table classjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
<p>Inverts the arrows of the automaton <var class="Arg">aut</var>.</p>
<div class="example"><pre>
<span < =GAPprompt>&</><spanclass=GAPinput"aut=utomaton"det,3,,[121]21,],[,2);<span>
<span class=""gap>/ span class"GAPinput"z:ReversedAutomaton);isplay(z);</span>
| 123
---------<spanclass"">gt<span> span =GAPinput"aut:Automaton(""3"01,1,1,21,,],1,2];<span>
a | [ 1 ] [ 2, 3 ]
b | [ 1 ] [ 2 ] [ 3 ]
Initial state: [ 2 ]
Accepting java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
</pre></div>
<p><a id="java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 0
<h5>2.5-6 PermutedAutomaton</h5>
class#8227; PermutedAutomaton</code>( <var class="Arg">aut</var>, <var class="Arg">p</var> )</td><td class="tdright">( function )</td></tr></table></div>
p < =Arg"a</>andalist var "rg>p</var a java.lang.StringIndexOutOfBoundsException: Range [112, 111) out of bounds for length 173
<div class="example"><pre>
<span 123 java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
------------java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
a | 2342
b|
Initial state: [ p> deterministicautomaton <classkeyw>true/>when eachletter injectivepartial on thevertices c class"keyw">false<code> otherwise.</p>
Accepting state: [ 3 ]
<span class="div class=example"<>
| 123 java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
-----------------
a | 2421
b <> aninverse automaton is thought as iftheinverse edges (abeledby formal inverses ofthelettersof the alphabet)werepresent,althoughthey usually bemade explicit thefunction< ""A</>/p
Initial state: [ 3 ]
Accepting state: [ 4 dgesToInverseAutomaton/5>
</pre></div>
<h5>2.5-7 java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 0
s="< >
<p>Given an automaton <var class="Arg">aut</var>, returns a list of automata with
<div class="example"><Initial state:[ ]
<span class="s class=g&;/java.lang.StringIndexOutOfBoundsException: Range [38, 37) out of bounds for length 117
<| 123
[ < deterministic automaton on 2 letters-------
< deterministic automaton on 2 letters b | 1java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
< deterministic automaton on 2 letters withInitial :[ 2 ]
&><div>
&java.lang.StringIndexOutOfBoundsException: Range [0, 5) out of bounds for length 0
< deterministic automaton on 2 java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 36
</pre></div>
<div class="func"><table class="func" width="100%"><tr><td class=class""gap&;/><classjava.lang.StringIndexOutOfBoundsException: Range [62, 60) out of bounds for length 94
<p4>2.5 <span <span =Heading>Basic operations/h4>
<div class="example"java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
<span class="GAPpromptjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
| 123
--------------
a | 2
b | 12
Initial state: [ 22462E name="X80D423A584246E2E"></a></p>
Accepting states: [ 1, 2 ]
< "gap":Automaton(det"32[ 2 3 3 ] [ 1, 2 ], ][2];/spanjava.lang.StringIndexOutOfBoundsException: Index 135 out of bounds for length 135
| [ ]
--------------
a | 13
b java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 0
Initial state: [ 1
Accepting states: [ 3, 1 ]
</pre></div>
Accepting span class="GAPprompt">gap></span> <span class="GAPinput">Display(x);</span> ">< span"java.lang.StringIndexOutOfBoundsException: Range [61, 60) out of bounds for length 107
| 123456789
- states 1 java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
a|1
b | 28
Initial state: [ 2 ]
Accepting states: [ 1, 2, 4, 5 ]
</pre></div>
<p><a id="java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 15
<div class="example"><
<<div =">java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
< deterministic automaton on 2 letters with&; deterministic on2 with 5 &tjava.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
<span class="GAPprompt">gap></span> <spanl; 23 gtjava.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
< < deterministic java.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 60
<span class="GAPprompt">gap></span> <span class="java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 12
< deterministic automaton on 2 letters <p>a id"X79F21CB37B34A354"name"79F21CB37B34A354"<a<java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
<span class="GAPprompt">gap></span> <span java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
b()
</pre></div>
<h4>2.6 <span class=java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
<p>Each letter of the alphabet of an automaton induces a partial transformation in its set of statespReturns transitionof automaton< class""aut<><p
<" =>a<p>
h5261 java.lang.StringIndexOutOfBoundsException: Range [31, 29) out of bounds for length 34
<div < =java.lang.StringIndexOutOfBoundsException: Range [24, 22) out of bounds for length 143
<p>Returns the transition semigroup of the deterministic automaton <var class="Arg">aut</var>.</p>
d class=example>prejava.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
<span class="GAPprompt">gap></span> <span class="GAPinput">aut := Automaton("java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
<span class="GAPprompt"><iv class">tableclass""=100"<>class"> ""#
(ut; </java.lang.StringIndexOutOfBoundsException: Index 107 out of bounds for length 107
<span class="GAPprompt">gap></span> <java.lang.StringIndexOutOfBoundsException: Range [0, 44) out of bounds for length 26 30
</pre></div>
is the <em>syntactic semigroup</em> of that language.</p>
<java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 0
<div class="func"><table class="func" width="100%"><tr><td"<"hlink1> :</>a=".html<a> "1a =><a a=chap3."3</a> < href"hap4.html><a> < =chtml><a> ahref"."><a <ahref".html><> "Bib/< =chapInd.tml>nd</a> </div>
<p>Returns the syntactic semigroup of the language given by the rational expression <var class="Arg">rat</var>.</p>
<div class="example"><pre>
<span class="java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 7
<span class="GAPprompt">gap></span> <span class="GAPinput">S:=SyntacticSemigroupLang(rat);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(S);</span> 7
</pre></div>
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.