Isar
Theorem proving system supporting both interactive proof development and some degree of automation have become quite successful in sizable applications in recent years (e.g. Isabelle/Bali or VerifiCard). Typical examples of this kind of semi-automated reasoning systems include Coq, PVS, HOL, and Isabelle. Despite this success in actually formalizing parts of mathematics and computer science, there are still obstacles in addressing a broad range of people. Paradoxically, none of the existing semi-automated reasoning systems have an adequate primary notion of proof that is amenable to human understanding (for communication, or just maintenance). The Intelligible semi-automated reasoning (Isar) approach to readable formal proof documents sets out to bridge the semantic gap between internal notions of proof given by state-of-the-art interactive theorem proving systems and an appropriate level of abstraction for user-level work. The Isar formal proof language has been designed to satisfy quite contradictory requirements, being both ’declarative’ and immediately ’executable’, by virtue of the Isar/VM interpreter. Compared to existing declarative theorem proving systems (like Mizar), Isar avoids several shortcomings: it is based on a few basic principles only, it is quite independent of the underlying logic, and integrates a broad range of automated proof methods. Interactive proof development is supported directly as well. The Isabelle system offers Isar as an alternative proof language interface layer, beyond traditional tactic scripts. The Isabelle/Isar system provides an interpreter for the Isar formal proof document language. Isabelle/Isar input consists either of proper document constructors, or improper auxiliary commands (for diagnostics, exploration etc.). Proof texts consisting of proper document constructors only admit a purely static reading, thus being intelligible later without requiring dynamic replay that is so typical for traditional proof scripts. Any of the Isabelle/Isar commands may be executed in single-steps, so basically the interpreter has a proof text debugger already built-in. The Isar subsystem is tightly integrated into the Isabelle/Pure meta-logic implementation. Theories, theorems, proof procedures etc. may be used interchangeably between Isabelle-classic proof scripts and Isabelle/Isar documents. Isar is as generic as Isabelle, able to support a wide range of object-logics. The current end-user setup is mainly for Isabelle/HOL. Together with the Isabelle/Isar instantiation of Proof General, a generic (X)Emacs interface for interactive proof assistants, we arrive at a reasonable environment for live proof document editing. Thus proof texts may be developed incrementally by issuing proper document constructors, including forward and backward tracing of partial documents; intermediate states may be inspected by diagnostic commands.
Keywords for this software
References in zbMATH (referenced in 120 articles , 1 standard article )
Showing results 1 to 20 of 120.
Sorted by year (- Lammich, Peter; Sefidgar, S. Reza: Formalizing network flow algorithms: a refinement approach in Isabelle/HOL (2019)
- Bauereiß, Thomas; Pesenti Gritti, Armando; Popescu, Andrei; Raimondi, Franco: CoSMed: a confidentiality-verified social media platform (2018)
- Schlichtkrull, Anders: Formalization of the resolution calculus for first-order logic (2018)
- Butterfield, Andrew: Utpcalc -- a calculator for UTP predicates (2017)
- Kunčar, Ondřej; Popescu, Andrei: Comprehending Isabelle/HOL’s consistency (2017)
- Maletzky, Alexander; Windsteiger, Wolfgang: The formalization of Vickrey auctions: a comparison of two approaches in Isabelle and Theorema (2017)
- Arthan, Rob: On definitions of constants and types in HOL (2016)
- Bengtson, Jesper; Parrow, Joachim; Weber, Tjark: Psi-calculi in Isabelle (2016)
- Esparza, Javier; Křetínský, Jan; Sickert, Salomon: From LTL to deterministic automata. A safraless compositional approach (2016)
- Hupel, Lars; Kuncak, Viktor: Translating scala programs to isabelle/HOL. System description (2016)
- Lammich, Peter; Sefidgar, S. Reza: Formalizing the Edmonds-Karp algorithm (2016)
- Maletzky, Alexander: Interactive proving, higher-order rewriting, and theory analysis in Theorema 2.0 (2016)
- Marmsoler, Diego; Gleirscher, Mario: Specifying properties of dynamic architectures using configuration traces (2016)
- Naumowicz, Adam; Piliszek, Radosław: Accessing the Mizar library with a weakly strict Mizar parser (2016)
- Obua, Steven; Scott, Phil; Fleuriot, Jacques: ProofScript: proof scripting for the masses (2016)
- Zhan, Bohua: AUTO2, A saturation-based heuristic prover for higher-order logic (2016)
- Bancerek, Grzegorz; Byliński, Czesław; Grabowski, Adam; Korniłowicz, Artur; Matuszewski, Roman; Naumowicz, Adam; Pąk, Karol; Urban, Josef: \textscMizar: state-of-the-art and beyond (2015)
- Grabowski, Adam (ed.); Korniłowicz, Artur (ed.); Naumowicz, Adam (ed.): Four decades of \textscMizar. Foreword (2015)
- Korniłowicz, Artur: Flexary connectives in Mizar (2015)
- Li, Yongjian; Pang, Jun: Formalizing provable anonymity in Isabelle/HOL (2015)