GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
12[1XAutomata[101X345( Version 1.13 )678Manuel Delgado910Steve Linton1112José João Morais13141516Manuel Delgado17Email: [7Xmailto:[email protected][107X18Homepage: [7Xhttp://www.fc.up.pt/cmup/mdelgado[107X19Steve Linton20Email: [7Xmailto:[email protected][107X21Homepage: [7Xhttp://www-circa.mcs.st-and.ac.uk/~sal/[107X2223-------------------------------------------------------24[1XCopyright[101X25[33X[0;0Y© 2004 by Manuel Delgado, Steve Linton and José Morais[133X2627[33X[0;0YWe adopt the copyright regulations of [5XGAP[105X as detailed in the copyright28notice in the [5XGAP[105X manual.[133X293031-------------------------------------------------------32[1XAcknowledgements[101X33[33X[0;0YThe first author wishes to acknowledge Cyril Nicaud and Paulo Varandas for34their help in programming some functions of the very first version of this35package. He wishes also to acknowledge useful discussions and comments by36Cyril Nicaud, Vítor H. Fernandes, Jean-Eric Pin and Jorge Almeida.[133X3738[33X[0;0YThe first author also acknowledges support of FCT through CMUP and the FCT39and POCTI Project POCTI/32817/MAT/2000 which is funded in cooperation with40the European Community Fund FEDER.[133X4142[33X[0;0YThe third author acknowledges financial support of FCT and the POCTI program43through a scholarship given by Centro de Matemática da Universidade do44Porto.[133X4546[33X[0;0YThe authors would like to thank Mark Kambites for his contribution in47finding bugs and making suggestions for the improvement of this package.[133X4849[33X[0;0YConcerning the mantainment:[133X5051[33X[0;0YThe first author was/is (partially) supported by the FCT project52PTDC/MAT/65481/2006 and also by the [13XCentro de Matemática da Universidade do53Porto[113X (CMUP), funded by the European Regional Development Fund through the54program COMPETE and by the Portuguese Government through the FCT - Fundação55para a Ciência e a Tecnologia under the project PEst-C/MAT/UI0144/2011.[133X565758-------------------------------------------------------59[1XColophon[101X60[33X[0;0YThis work started in 1998, when the first author was in the LIAFA at the61University of Paris 7, in a post-doc. Encouraged by J. E. Pin, he began the62implementation in [5XGAP[105X3 of an algorithm obtained some time before to answer a63question from the realm of Finite Semigroups proposed by J. Almeida. It is64now part of a separate package: [10Xfinsemi[110X.[133X6566[33X[0;0YThe first version of this package on automata was prepared by the first67author who gave it the form of a [5XGAP[105X share package. In a second version,68prepared by the first and third authors, many functions have been added and69the performance of many of the existing ones has been improved. Further70important improvements, specially concerning performance, have been achieved71when the second author joined the group.[133X7273[33X[0;0YSince Version 1.12, the package is maintained by the first two authors. Bug74reports, suggestions and comments are, of course, welcome. Please use our75email addresses to this effect.[133X767778-------------------------------------------------------798081[1XContents (Automata)[101X82831 [33X[0;0YIntroduction[133X842 [33X[0;0YFinite Automata[133X852.1 [33X[0;0YAutomata generation[133X862.1-1 Automaton872.1-2 IsAutomaton882.1-3 IsDeterministicAutomaton892.1-4 IsNonDeterministicAutomaton902.1-5 IsEpsilonAutomaton912.1-6 String922.1-7 RandomAutomaton932.2 [33X[0;0YAutomata internals[133X942.2-1 AlphabetOfAutomaton952.2-2 AlphabetOfAutomatonAsList962.2-3 TransitionMatrixOfAutomaton972.2-4 InitialStatesOfAutomaton982.2-5 SetInitialStatesOfAutomaton992.2-6 FinalStatesOfAutomaton1002.2-7 SetFinalStatesOfAutomaton1012.2-8 NumberStatesOfAutomaton1022.3 [33X[0;0YComparison of automata[133X1032.4 [33X[0;0YTests involving automata[133X1042.4-1 IsDenseAutomaton1052.4-2 IsRecognizedByAutomaton1062.4-3 IsPermutationAutomaton1072.4-4 IsInverseAutomaton1082.4-5 AddInverseEdgesToInverseAutomaton1092.4-6 IsReversibleAutomaton1102.5 [33X[0;0YBasic operations[133X1112.5-1 CopyAutomaton1122.5-2 NullCompletionAutomaton1132.5-3 ListSinkStatesAut1142.5-4 RemovedSinkStates1152.5-5 ReversedAutomaton1162.5-6 PermutedAutomaton1172.5-7 ListPermutedAutomata1182.5-8 NormalizedAutomaton1192.5-9 UnionAutomata1202.5-10 ProductAutomaton1212.5-11 ProductOfLanguages1222.6 [33X[0;0YLinks with Semigroups[133X1232.6-1 TransitionSemigroup1242.6-2 SyntacticSemigroupAut1252.6-3 SyntacticSemigroupLang1263 [33X[0;0YRational languages[133X1273.1 [33X[0;0YRational Expressions[133X1283.1-1 RationalExpression1293.1-2 RatExpOnnLetters1303.1-3 RandomRatExp1313.1-4 SizeRatExp1323.1-5 IsRationalExpression1333.1-6 AlphabetOfRatExp1343.1-7 AlphabetOfRatExpAsList1353.1-8 CopyRatExp1363.2 [33X[0;0YComparison of rational expressions[133X1373.3 [33X[0;0YOperations with rational languages[133X1383.3-1 UnionRatExp1393.3-2 ProductRatExp1403.3-3 StarRatExp1414 [33X[0;0YAutomata [13Xversus[113X rational expressions[133X1424.1 [33X[0;0YFrom automata to rational expressions[133X1434.1-1 AutomatonToRatExp1444.2 [33X[0;0YFrom rational expression to automata[133X1454.2-1 RatExpToNDAut1464.2-2 RatExpToAutomaton1474.3 [33X[0;0YSome tests on automata[133X1484.3-1 IsEmptyLang1494.3-2 IsFullLang1504.3-3 AreEqualLang1514.3-4 IsContainedLang1524.3-5 AreDisjointLang1535 [33X[0;0YSome functions involving automata[133X1545.1 [33X[0;0YFrom one type to another[133X1555.1-1 EpsilonToNFA1565.1-2 EpsilonToNFASet1575.1-3 EpsilonCompactedAut1585.1-4 ReducedNFA1595.1-5 NFAtoDFA1605.1-6 FuseSymbolsAut1615.2 [33X[0;0YMinimalization of an automaton[133X1625.2-1 UsefulAutomaton1635.2-2 MinimalizedAut1645.2-3 MinimalAutomaton1655.2-4 AccessibleStates1665.2-5 AccessibleAutomaton1675.2-6 IntersectionLanguage1685.2-7 AutomatonAllPairsPaths1696 [33X[0;0YFinite regular languages[133X1706.1 [33X[0;0YDealing with finite regular languages[133X1716.1-1 IsFiniteRegularLanguage1726.1-2 FiniteRegularLanguageToListOfWords1736.1-3 ListOfWordsToAutomaton174A [33X[0;0YDirected graphs[133X175A.1 [33X[0;0YDirected graphs[133X176A.1-1 RandomDiGraph177A.1-2 VertexInDegree178A.1-3 VertexOutDegree179A.1-4 AutoVertexDegree180A.1-5 ReversedGraph181A.1-6 AutoConnectedComponents182A.1-7 GraphStronglyConnectedComponents183A.1-8 UnderlyingMultiGraphOfAutomaton184A.1-9 UnderlyingGraphOfAutomaton185A.1-10 DiGraphToRelation186A.1-11 MSccAutomaton187A.1-12 AutoIsAcyclicGraph188B [33X[0;0YDrawing automata[133X189B.1 [33X[0;0YInstalling some external programs[133X190B.2 [33X[0;0YFunctions to draw automata[133X191B.2-1 DrawAutomaton192B.2-2 DrawAutomata193B.2-3 DrawGraph194B.2-4 DrawSCCAutomaton195B.3 [33X[0;0YDrawings output formats[133X196B.4 [33X[0;0YDrawings extra graph attributes[133X197C [33X[0;0YInverse automata and subgroups of the free group[133X198C.1 [33X[0;0YFrom subgroups to inverse automata[133X199C.1-1 GeneratorsToListRepresentation200C.1-2 ListToGeneratorsRepresentation201C.1-3 FlowerAutomaton202C.1-4 FoldFlowerAutomaton203C.1-5 SubgroupGenToInvAut204C.2 [33X[0;0YFrom inverse automata to subgroups[133X205C.2-1 GeodesicTreeOfInverseAutomaton206C.2-2 InverseAutomatonToGenerators207208209[32X210211212