Formal Verification for JavaScript Regular Expressions: A Proven Mechanized Semantics and Its Applications

Read full text
Authors: Aurèle Barrière, Victor Deng, Clément Pit-Claudel
Cited by: 0
References: 49

Abstract

We present the first mechanized, succinct, practical, complete, and proven-faithful semantics for a modern regular expression language with backtracking semantics. We ensure its faithfulness by proving it equivalent to a preexisting line-by-line embedding of the official ECMAScript specification of JavaScript regular expressions. We demonstrate its practicality by presenting two real-world applications. First, a new notion of contextual equivalence for modern regular expressions, which we use to prove or disprove rewrites drawn from previous work. Second, the first formal proof of the PikeVM algorithm used in many real-world engines. In contrast with the specification and other formalization work, our semantics captures not only the top-priority match, but a full backtracking tree recording all possible matches and their respective priority. All our definitions and results have been mechanized in the Rocq proof assistant.

Fields of Study & Subjects

Logic programming and type systems Web Application Security Vulnerabilities Security and Verification in Computing

Publication details

Journal / source
Proceedings of the ACM on Programming Languages
Volume
10
Issue
POPL
Pages
1964–1993
Publication date
8 January 2026
Language
EN