Abstract

The Emacs authoring environment for Mizar (MizarMode) is today the authoring tool of choice for many (probably the majority of) Mizar authors. This article describes the MizarMode and focuses on the proof assistance functions and tools available in it. We start with the explanation of the design principles behind the Mizar system, and show how these design principles—mainly the concentration on simple and intuitive human-oriented proofs—have helped Mizar in developing and maintaining a very large body of formalized mathematics. Mizar is a non-programmable and non-tactical verifier: the proofs are developed in the traditional “write—compile—correct” software programming loop. While this method is in the beginning more laborious than the methods employed in tactical and programmable proof assistants, it makes the “proof code” in the long-run more readable, maintainable and reusable. This seems to be a crucial factor for a long-term and large-scale formalization effort. MizarMode has been designed with the aim to facilitate this kind of proof development by a number of “code-generating”, “code-browsing” and “code-searching” methods, and tools programmed or integrated within it. These methods and tools now include, e.g., the automated generation of proof skeletons, semantic browsing of the articles and abstracts, structured viewing, proof advice using trained machine learning tools like the Mizar Proof Advisor, deductive tools like MoMM, etc. We give an overview of these proof-assistance tools and their integration in the MizarMode, and also discuss some emerging and future extensions such as integration of external theorem proving assistance.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call