Proof-directed program transformation: A functional account of efficient regular expression matching. (24th May 2021)