1. Certified Context-Free Parsing: A formalisation of Valiant's Algorithm in Agda
- Author
-
Jean-Philippe Bernardy and Patrik Jansson
- Subjects
FOS: Computer and information sciences ,Computer Science - Logic in Computer Science ,Correctness ,General Computer Science ,Computer science ,Agda ,Context (language use) ,0102 computer and information sciences ,02 engineering and technology ,computer.software_genre ,Mathematical proof ,01 natural sciences ,Theoretical Computer Science ,0202 electrical engineering, electronic engineering, information engineering ,computer.programming_language ,Parsing ,Proof assistant ,Algebraic specification ,Transitive closure ,F.4.1 ,F.4.2 ,Logic in Computer Science (cs.LO) ,TheoryofComputation_MATHEMATICALLOGICANDFORMALLANGUAGES ,010201 computation theory & mathematics ,TheoryofComputation_LOGICSANDMEANINGSOFPROGRAMS ,020201 artificial intelligence & image processing ,computer ,Algorithm - Abstract
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.
- Published
- 2016
- Full Text
- View/download PDF