A mechanisation of some context-free language theory in HOL4
Authors
Australian National University\ NICTA
Abstract
We describe the mechanisation of some foundational results in the theory of context-free languages (CFLs), using the HOL4 system. We focus on pushdown automata (PDAs). We show that two standard acceptance criteria for PDAs (“accept-by-empty-stack” and “accept-by-final-state”) are equivalent in power. We are then able to show that the pushdown automata (PDAs) and context-free grammars (CFGs) accept the same languages by showing that each can emulate the other. With both of these models to hand, we can then show a number of basic, but important results. For example, we prove the basic closure properties of the context-free languages such as union and concatenation. Along the way, we also discuss the varying extent to which textbook proofs (we follow Hopcroft and Ullman) and our mechanisations diverge: sometimes elegant textbook proofs remain elegant in HOL; sometimes the required mechanisation effort blows up unconscionably.
BibTeX Entry
@article{Barthwal_Norrish_14,
author = {Barthwal, Aditi and Norrish, Michael},
doi = {10.1016/j.jcss.2013.05.003},
journal = {Journal of Computer and System Sciences},
keywords = {context-free languages, language theory},
month = mar,
number = {2},
pages = {346--362},
paperurl = {https://trustworthy.systems/publications/nicta_full_text/7411.pdf},
title = {A mechanisation of some context-free language theory in {HOL4}},
volume = {80},
year = {2014}
}
Full text
BibTeX