holpy: Interactive Theorem Proving in Python

15 May 2019  ·  Bohua Zhan ·

The design of modern proof assistants is faced with several sometimes conflicting goals, including scalability, extensibility, and soundness of proof checking. In this paper, we propose a new design for proof assistants, in an attempt to address some of these difficulties. The new design is characterized by a pervasive use of macros in representing and checking proofs, and a foundational format for theory files based on JSON. We realize these ideas in a prototype proof assistant called holpy, implemented in Python. We also demonstrate how proof automation can be extended using Python under this framework. Finally, we present a case study about a simple imperative language.

PDF Abstract
No code implementations yet. Submit your code now

Categories


Logic in Computer Science

Datasets


  Add Datasets introduced or used in this paper