Proof-directed program transformation: A functional account of efficient regular expression matching
Keyword(s):
Abstract We show how to systematically derive an efficient regular expression (regex) matcher using a variety of program transformation techniques, but very little specialized formal language and automata theory. Starting from the standard specification of the set-theoretic semantics of regular expressions, we proceed via a continuation-based backtracking matcher, to a classical, table-driven state machine. All steps of the development are supported by self-contained (and machine-verified) equational correctness proofs.
2009 ◽
Vol 2009
◽
pp. 1-10
◽
2015 ◽
Vol 85
(3)
◽
pp. 355-371
◽
2021 ◽
Vol 46
(9)
◽
pp. 1515-1520