TRX: a formally verified parser interpreter. Parsing is an important problem in computer science and yet surprisingly little attention has been devoted to its formal verification. In this paper, we present TRX: a parser interpreter formally developed in the proof assistant Coq, capable of producing formally correct parsers. We are using parsing expression grammars (PEGs), a formalism essentially representing recursive descent parsing, which we consider an attractive alternative to context-free grammars (CFGs). From this formalization we can extract a parser for an arbitrary PEG grammar with the warranty of total correctness, i.e., the resulting parser is terminating and correct with respect to its grammar and the semantics of PEGs; both properties formally proven in Coq.
Keywords for this software
References in zbMATH (referenced in 8 articles )
Showing results 1 to 8 of 8.
- Ramos, Marcus Vinícius Midena; de Queiroz, Ruy J.G.B.; Moreira, Nelma; Almeida, José Carlos Bacelar: On the formalization of some results of context-free language theory (2016)
- Barthwal, Aditi; Norrish, Michael: A mechanisation of some context-free language theory in HOL4 (2014)
- Firsov, Denis; Uustalu, Tarmo: Certified CYK parsing of context-free languages (2014)
- Wiedijk, Freek: Pollack-inconsistency (2012)
- Koprowski, Adam; Binsztok, Henri: TRX: A formally verified parser interpreter (2011) ioport
- Ridge, Tom: Simple, functional, sound and complete parsing for all context-free grammars (2011)
- Danielsson, Nils Anders: Total parser combinators (2010)
- Koprowski, Adam; Binsztok, Henri: TRX: a formally verified parser interpreter (2010)