~/talk

Verified and Efficient Matching of Regular Expressions with Lookaround

Talkat CPP 2025 · 2025-01-20..01-21· [compilers-and-language-design]
links:none on file
links:none on file
slides:none on file

Presents a Coq formalization and a verified matcher that handles lookahead and lookbehind, including negative lookarounds via two complementary predicates, and extracts executable Haskell code. The algorithm decomposes expressions into layers (or-expressions on o-strings), uses marked regular expressions to simulate NFAs functionally, and resolves oracle queries bottom-up. Proof scripts total about 10,000 lines and experiments on worst-case patterns show runtime growing linearly in both regex size and input length. Claims and code are reproducible.

AI-written summary · about

  1. 0:00Verified lookaround matching
  2. 1:07Lookaround semantics
  3. 3:38Lookaround properties
  4. 5:01Regex matching landscape
  5. 7:10Layer-wise matching algorithm
  6. 10:20O strings and oracle valuations
  7. 12:50Matching Orexs on O strings
  8. 14:16Implementation approaches
  9. 16:46Marked regex explained
  10. 19:14Verifying marked expressions
  11. 20:15Linear time complexity evaluation
  12. 21:40Key contributions summary
  13. 23:08Question and answer session
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.