Project Overview
This project implements algorithms that work with regular expressions, NFAs and DFAs. It works by converting the input regular expression to Non-Deterministic Finite Automata (NFA) then the NFA is converted to a Deterministic Automata (DFA) using the subset construction and the DFA and checked with the input string to see if it is matched.
The interpreter is assembled from three parts. The first part simulates an NFA, part two implements an NFA to DFA converter and the last part converts a regular expression to an NFA.