Abstract
Literate proving is the analogue for literate programming in the mathematical realm. That is, the goal of literate proving is for humans to produce clear expositions of formal mathematics that could even be enjoyable for people to read whilst remaining faithful representations of the actual proofs. This paper describes maze, a generic literate proving system. Authors markup formal proof files, such as Mizar files, with arbitary XML and use maze to obtain the selected extracts and transform them for presentation, e.g. as LATEX. To aid its use, maze has built in transformations that include pretty printing and proof sketching for inclusion in LATEX documents. These transformations challenge the concept of faithfulness in literate proving but it is argued that this should be a distinguishing feature of literate proving from literate programming.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Asperti, A., Buchberger, B., Davenport, J.H. (eds.): MKM 2003. LNCS, vol. 2594. Springer, Heidelberg (2003)
Asperti, A., et al.: Mathematical Knowledge Management in HELM. Annals of Mathematics and Artificial Intelligence 38(1), 27–46 (2003)
Bertot, Y., Castéran, P.: Coq’Art: The Calculus of Inductive Constructions. Springer, Heidelberg (2004), See also http://coq.inria.fr/
Cairns, P., Gow, J.: A theoretical analysis of hierarchical proofs. In: [1], pp. 175–187 (2003)
Cairns, P., Gow, J.: Using and parsing Mizar. Electronic Notes in Theoretical Computer Sci. 93, 60–69 (2004)
Cairns, P., Gow, J., Collins, P.: On dynamically presenting a topology course. Annals of Mathematics and Artificial Intelligence 38, 91–104 (2003)
Cruz-Filipe, L., Geuvers, H., Wiedijk, F.: C-CoRN, the constructive Coq repository at Nijmegen. In: Asperti, A., Bancerek, G., Trybulec, A. (eds.) MKM 2004. LNCS, vol. 3119, pp. 88–103. Springer, Heidelberg (2004)
Knuth, D.E.: Literate programming. The Computer Journal 27, 97–111 (1984)
McConnell, S.: Code Complete: A practical handbook of software construction. Microsoft Press, Redmond (1993)
The Mizar Mathematical Library, http://mizar.org
Paulson, L.: Isabelle: a generic theorem prover. Springer, Heidelberg (1994)
Raffalli, C., David, R.: Computer Assisted Teaching in Mathematics. In: Proc. Workshop on 35 Years of Automath, Edinburgh (2002)
Thimbleby, H.: Experiences of ‘literate programming’ using cweb (a variant of Knuth’s WEB). The Computer Journal 29(3), 201–211 (1986)
Thimbleby, H.: Explaining code for publication. Software — Practice and Experience 33, 975–1001 (2003)
Wiedijk, F.: Irrationality of e. Journal of Formalized Mathematics 11(42) (1999)
Wiedijk, F. (2000), The De Bruijn Factor, Poster at TPHOL (2000)
Wiedijk, F.: Formal Proof Sketches. In: Berardi, S., Coppo, M., Damiani, F. (eds.) TYPES 2003. LNCS, vol. 3085, pp. 378–393. Springer, Heidelberg (2004)
Wysocki, M., Darmochwał, A.: Subsets of topological spaces. Journal of Formalized Mathematics 1(28) (1989)
Zinn, C.: Understanding Informal Mathematical Discourse. PhD Thesis, Arbeitsberichter des Instituts für Informatik, Friedrich-Alexander-Universität, 37(4) (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Cairns, P., Gow, J. (2006). Literate Proving: Presenting and Documenting Formal Proofs. In: Kohlhase, M. (eds) Mathematical Knowledge Management. MKM 2005. Lecture Notes in Computer Science(), vol 3863. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11618027_11
Download citation
DOI: https://doi.org/10.1007/11618027_11
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-31430-1
Online ISBN: 978-3-540-31431-8
eBook Packages: Computer ScienceComputer Science (R0)