Skip to content

Regular Expression (Regex), Nondeterministic finite automaton (NFA) and Deterministic finite automaton (DFA) implement in PHP.

License

Notifications You must be signed in to change notification settings

contentking/FormalTheory

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FormalTheory

FormalTheory is a library that allows for manipulation and conversion of NFAs, DFAs and Regular Expressions. Some of the features it includes are:

  • Regex Lexing (AST)
  • Regex to NFA conversion
  • NFA to DFA conversion (determinize)
  • DFA minimization
  • DFA solution counting
  • FA equality
  • FA superset/subset test
  • FA proper superset/subset test
  • FA has a valid solution
  • FA print
  • FA export as DOT
  • FA string matching
  • FA intersections
  • FA unions
  • FA negation
  • FA reverse
  • FA to Regex conversion (basic)
  • Heavy Unit Test Coverage
  • Modern Autoloading Support
  • Regex optimization via rules

Note: FA is either a DFA or NFA

Coming Soon™

  • Regex optimization via mutations
  • Generalized DFA solving based on positive/negative match list

Build Status

About

Regular Expression (Regex), Nondeterministic finite automaton (NFA) and Deterministic finite automaton (DFA) implement in PHP.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • PHP 100.0%