open access publication

Article, 2024

On Verified Automated Reasoning in Propositional Logic: Teaching Sequent Calculus to Computer Science Students

Vietnam Journal of Computer Science, ISSN 2196-8896, 2196-8888, Pages 1-24, 10.1142/s2196888824500064

Contributors

Lund, Simon Tobias 0009-0005-2957-3472 [1] Villadsen, Jørgen 0000-0003-3624-1159 [1]

Affiliations

  1. [1] Technical University of Denmark
  2. [NORA names: DTU Technical University of Denmark; University; Denmark; Europe, EU; Nordic; OECD]

Abstract

As the complexity of software systems is ever increasing, so is the need for practical tools for formal verification. Among these are automatic theorem provers, capable of solving various reasoning problems automatically, and proof assistants, capable of deriving more complex results when guided by a mathematician/programmer. In this paper we consider using the latter to build the former. In the proof assistant Isabelle/HOL we combine functional programming and logical program verification to build a theorem prover for propositional logic. We also consider how such a prover can be used to solve a reasoning task without much mental labor. The development is extended with a formalized proof system for writing machine-checked sequent calculus proofs. We consider how this can be used to teach computer science students about logic, automated reasoning and proof assistants.

Keywords

Isabelle/HOL, assistance, assistant Isabelle/HOL, automated reasoning, automatic theorem provers, calculus, complex, complexity of software systems, complexity results, computer, computer science students, development, functional programming, labor, logic, mental labor, problem, program, program verification, proof, proposition, propositional logic, prover, reasoning problems, reasoning tasks, reasons, results, science students, sequent calculus, sequent calculus proofs, software systems, students, system, task, teaching, theorem, theorem prover, tools, verifiability, verification

Data Provider: Digital Science