Abstract
To improve on existing models of interaction with a proof assistant (PA), in particular for storage and replay of proofs, we introduce three related concepts, those of: a proof movie, consisting of frames which record both user input and the corresponding PA response; a camera, which films a user’s interactive session with a PA as a movie; and a proviola, which replays a movie frame-by-frame to a third party.
In this paper we describe the movie data structure and we discuss a prototype implementation of the camera and proviola based on the ProofWeb system [7]. ProofWeb uncouples the interaction with a PA via a web-interface (the client) from the actual PA that resides on the server. Our camera films a movie by “listening” to the ProofWeb communication.
The first reason for developing movies is to uncouple the reviewing of a formal proof from the PA used to develop it: the movie concept enables users to discuss small code fragments without the need to install the PA or to load a whole library into it.
Other advantages include the possibility to develop a separate commentary track to discuss or explain the PA interaction. We assert that a combined camera+proviola provides a generic layer between a client (user) and a server (PA). Finally we claim that movies are the right type of data to be stored in an encyclopedia of formalized mathematics, based on our experience in filming the Coq standard library.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Aspinall, D., Lüth, C., Winterstein, D.: A framework for interactive proof. In: Kauers, M., Kerber, M., Miner, R., Windsteiger, W. (eds.) MKM/CALCULEMUS 2007. LNCS (LNAI), vol. 4573, pp. 161–175. Springer, Heidelberg (2007)
Coq-Club Mailing List: The Coq-Club mailing list. Mailing List, http://logical.saclay.inria.fr/coq-puma/topics
Coq Development Team, T.: The Coq standard library. Library documented on, http://coq.inria.fr/stdlib (obtained on March 5, 2010)
Corbineau, P., Kaliszyk, C.: Cooperative repositories for formal proofs. In: Kauers, M., Kerber, M., Miner, R., Windsteiger, W. (eds.) MKM/CALCULEMUS 2007. LNCS (LNAI), vol. 4573, pp. 221–234. Springer, Heidelberg (2007), http://www4.in.tum.de/~kaliszyk/docs/cek_p3.pdf
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns – Elements of Reusable Object-Oriented Software, 1st edn. Addison-Wesley, Reading (1994)
Geuvers, H., Mamane, L.: A document-oriented Coq plugin for TeXmacs. In: Libbrecht, P. (ed.) MathUI Workshop, MKM 2006 Conference, Wokingham, UK (2006), http://www.activemath.org/~paul/MathUI06/
Kaliszyk, C.: Web interfaces for proof assistants. In: Autexier, S., Benzmüller, C. (eds.) Proceedings of UITP 2006, Seattle. ENTCS, vol. 174(2), pp. 49–61 (2007), http://www4.in.tum.de/~kaliszyk/docs/cek_p2.pdf
Kaliszyk, C.: Correctness and Availability. Building Computer Algebra on top of Proof Assistants and making Proof Assistants available over the Web. Ph.D. thesis, Radboud University Nijmegen (2009), http://www4.in.tum.de/~kaliszyk/docs/ck_thesis_webdoc.pdf
Kohlhase, M.: OMDoc – An Open Markup Format for Mathematical Documents (version 1.2). LNCS (LNAI), vol. 4180. Springer, Heidelberg (2006)
Matita Team: Matita interactive theorem prover. Web page, obtained from, http://matita.cs.unibo.it/
Pierce, B.C., Casinghino, C., Greenberg, M.: Software foundations. Course notes (2010), http://www.cis.upenn.edu/~bcpierce/sf/
Tankink, C., Geuvers, H., McKinna, J.: Narrating formal proof (work in progress). In: Submitted to UITP 2010 (2010), http://cs.ru.nl/~carst/files/narration.pdf
Wenzel, M.: Parallel proof checking in Isabelle/Isar. In: Reis, G.D., Théry, L. (eds.) PLMMS 2009. ACM, Munich (2009), http://www4.in.tum.de/~wenzelm/papers/parallel-isabelle.pdf
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Tankink, C., Geuvers, H., McKinna, J., Wiedijk, F. (2010). Proviola: A Tool for Proof Re-animation. In: Autexier, S., et al. Intelligent Computer Mathematics. CICM 2010. Lecture Notes in Computer Science(), vol 6167. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-14128-7_37
Download citation
DOI: https://doi.org/10.1007/978-3-642-14128-7_37
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-14127-0
Online ISBN: 978-3-642-14128-7
eBook Packages: Computer ScienceComputer Science (R0)