Versions¶
2.1.2¶
bug introduced with the new Lark grammars when reading FAs with labelled states including curly brackets. (Fixed)
2.1.1¶
ssemigroup (is now in the distribution)
2.1¶
PRAX (Polynomial Random Approximation Algorithms) introduced
Compliance with python3.10
2.0.2¶
Better documentation (we hope!)
LARK grammars now leave in their own files
2.0.1¶
Port to python3
1.3.5.1¶
fa: NFA.HKequivalence() added Hopcroft & Karp linear equivalence test added
fa: type of operands of NFA intersection fixed
reex: counting snfs
1.3.5 (Giessen)¶
Myhill-Nerode relation computed for DFAs (DFA.MyhillNerodePartition())
1.3.4.1¶
fixed bug in the random generator seed initialisation (thanks to Héctor L Palacios V <hectorpal@gmail.com>)
1.3.4¶
rndfa & rndfap Generators now accept a seed for the random generation
1.3.3¶
fa.DFA.RegExp bug fixed
Watson-Daciuk’s ADFA incremental minimisation
DFA reversability test implemented
DFA intersection made faster
FA state deletion made faster
FA product construction made faster
makeCode made faster
1.3.2.1¶
Some bugs solved (thanks to David Purser to spot them)
1.3.1¶
fa.DFA.succintTransitions and fa.NFA.succintTransitions corrected
1.3¶
Methods added to construct error detecting languages
1.2.1¶
Random generator for ADFAs (rndadfa.py)
Implementation of Asperti, Coen and Tassi “au-point” conversion of RegExp to DFA RegExp.dfaAuPoint()
Implementation of Yamada, McNaughton and Glushkov conversion to DFA RegExp.dfaYMG()
JSON format for Automata
Ipython suport
1.2¶
Better interface to FL objects
enumDFA() and enumNFA() added to enumerate languages
CodePprop is now UDCodeProp
IPTProp removed
Strict concatenation implemented (DFA.sop() for now!)
binary operations with NFAs now deal correctly with CEpsilon-NFAs
uniform random word generator for finite languages
Codes hierarchy implemented
Words are now objects (defined in commom.py)
1.1.1¶
corrected bug in fa.NFA.elimEpsilon()
Resulting NFA from __or__ gets the union of both alphabets as its alphabet
1.1¶
FL.ADFA.minDFCA() corrected with the addition of ADFA.forceToDCFA()
random generation via cfg bug fixed
ICDFArndIncomplete bug fixed
xre fixed with context for negation
fa.DFA.hasTrapStateP() added
ICDFA random generator flag bug fixed
ICDFA random generators now written in python
New display methods to be usable inside IPython notebooks
Problems in Linux instalation
SFT.evalWordP() was returning the negation of what it should.
1.0 (Halifax)¶
addState() does not create states with clashing names (int/str) anymore.
New property builders having transducers as strings instead of stored in files.
yappy_parser permanent tables recover from reading problems, and quit shelf usage as last resort solution. Now it should work in all OS and in every possible conditions, even in a Apache execution environment
Intersection of properties corrected for input altering transducers
Normal Form Transducers
Conjunction of input properties described by input altering and input preserving transducers fixed
Infix Property added
Error corrected with the import of new yappy_parser
Now display() works in MSwindows, with ‘’start’’ instead of ‘’open’’
0.9.8¶
Cover automata
New fio module that deals with i/o
Two-way automata starting to be supported
Distinguishability of a language
New xre (extended Regular Expressions) module
0.9.7¶
stupid error in DFA.__repr__() fixed
better dealing of incomplete automata
new DFA and NFA file format
better integration with GRAIL+
0.9.6¶
some random bugs corrected in combo and single operations
0.9.5¶
Star and concatenation for DFAs aiming minimal transition complexity
new API documentation
better regular expression random generation
0.9.4¶
A primitive (but working) uninstall.
New setup for generator (bug fixed)
Shufle was migrated to fa.py
Shuffle for NFAs
comboperations: Shuffle corrected
fa: dump added to NFA and DFA
0.9.3¶
Prefix-free and prefix-closed finite languages random trie added
Renaming of AcyclicP to acyclicP. Loops are now excluded from the test unless a strict flag is passed as an argument.
trimP corrected accordingly
Version in package now reflects the proper version and not the major one
Corrections and simplifications added to ADFA.minimal()
Random balanced and “unbalanced” trie generation
Solved a bug with a mutual inclusions between fa and fl.
DFAtoADFA now resides in fl.
sigmaInititialSegment() added to fl
fa: product of dfas now ensures that its argument is a dfa.
0.9.2¶
Grammar tables for grail, reex and FAdo now start with a “.”
fl.py (Finite Languages) added to the project: AFA, ADFA and ANFA supported
Grail+ interface inproved. Now, only if the command hasmore than one argument a temporary file is created.
Uniform random generation of trie automata with (at least) a word of a maximum lenght added (fl.py)
rndfa.py added: a wrap for the ICDFA random Generator.
Errors corrected in minimazation methods.
readFromFile now supports comments as documented.
saveToFile deals correctly with append flag.
Bugs on deleteState() were corrected.