Theory Exploration for Programs and Proofs
Licentiate thesis, 2022
Cohipster is a theory exploration system that discovers equational lemmas about corecursive functions in Isabelle/HOL and automatically searches for coinductive proofs for them. Coinduction and corecursion are the mathematical duals of induction and recursion and allow the specification of potentially infinite structures such as streams, and functions that operate on such structures. Cohipster is the first system to automatically discover and prove coinductive lemmas, and its design required the development of techniques for testing infinite structures as well as for automating coinductive proofs.
RoughSpec is a template-based theory exploration system for Haskell programs. RoughSpec allows users to specify what kinds of properties they are interested in finding by using templates. A template is an expression describing a family of properties, such as distributivity or commutativity, that have a particular shape. Limiting the search space to specific shapes of properties makes theory exploration more targeted and tractable than previous methods.
Theorem Proving
Automated Reasoning
Theory Exploration
Property-Based Testing
Functional Programming
Conjecture Generation
Artificial Intelligence
Coinduction
Author
Sólrún Einarsdóttir
Chalmers, Computer Science and Engineering (Chalmers), Formal methods
Into the infinite - theory exploration for coinduction
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics),;Vol. 11110 LNAI(2018)p. 70-86
Paper in proceeding
Template-based Theory Exploration: Discovering Properties of Functional Programs by Testing
ACM International Conference Proceeding Series,;(2020)p. 67-78
Paper in proceeding
Subject Categories
Computer and Information Science
Publisher
Chalmers
EB, EDIT building, Rännvägen 6B, Chalmers. Also on Zoom with password 201230.
Opponent: Cezary Kaliszyk, University of Innsbruck, Austria