Hacker News new | ask | show | jobs
by m-chrzan 2007 days ago
Automata theory aficionado here. Regular languages are really neat! They have an air of being an "important" mathematical object, given how many different "natural" characterizations of them exist.

In a standard CS course you'll start out learning that regular expressions and finite state automata define the same class of languages. But they're also equivalent to:

- Languages generated by regular grammars (only rules of the form A -> a, A -> Ba, or A -> epsilon)

- Languages definable in monadic second-order (MSO) logic

- Languages "recognized" by a finite monoid (this algebraic appraoch to formal languages is super interesting and rich!)

- Language's whose Myhill-Nerode relation has finitely many equivalence classes