A library for working with deterministic finite automata (DFA), non-deterministic finite automata (NFA) and Regular Expressions (RE). It is possible to do:
- complement
- union
- intersection
- concatenation
- difference
- kleene star
- minimization
- equivalence
- conversion from RE to NFA
- conversion from NFA to DFA
- find the shortest word that automaton accepts
- find the longest word that automaton accepts
Aside from that, it is possible to load DFA, NFA or RE from file with lexical analysis. Also, it is possible to generate Java code from a Dfa object. That code can be used to specify actions that happens on exit, on enter or on transition.