Certified Context-Free Parsing: A formalisation of Valiant's Algorithm in Agda
Journal article, 2016

Valiant (1975) has developed an algorithm for recognition of context free languages. As of today, it remains the algorithm with the best asymptotic complexity for this purpose. In this paper, we present an algebraic specification, implementation, and proof of correctness of a generalisation of Valiant’s algorithm. The generalisation can be used for recognition, parsing or generic calculation of the transitive closure of upper triangular matrices. The proof is certified by the Agda proof assistant. The certification is representative of state-of-the-art methods for specification and proofs in proof assistants based on type-theory. As such, this paper can be read as a tutorial for the Agda system.


Context-Free Parsing

Valiant’s algorithm



Jean-Philippe Bernardy

Chalmers, Computer Science and Engineering (Chalmers), Software Technology (Chalmers)

Patrik Jansson

Chalmers, Computer Science and Engineering (Chalmers), Software Technology (Chalmers)

Logical Methods in Computer Science

1860-5974 (ISSN)

Vol. 12 2 28-

Subject Categories

Algebra and Logic

Software Engineering

Computer Science

Areas of Advance

Information and Communication Technology


Basic sciences