Solving Regex Crosswords Without Z3
Summary
The article describes building a regex crossword solver without Z3 by modeling regexes as NFAs and applying forward passes to prune candidate characters. It introduces a forward active state tracking approach using a Glushkov NFA to ensure valid paths, discusses limitations of naive passes, and provides code references and performance notes.