Induction with Recursive Definitions in Superposition [article]

Marton Hajdu, Petra Hozzova, Laura Kovacs, Andrei Voronkov, Ruzica Piskac, Michael W. Whalen
2021
Functional programs over inductively defined data types, such as lists, binary trees and naturals, can naturally be defined using recursive equations over recursive functions. In first-order logic, function definitions can be considered as universally quantified equalities. Verifying functional program properties therefore requires inductive reasoning with both theories and quantifiers. In this paper we propose new extensions and generalizations to automate induction with recursive functions in
more » ... saturation-based first-order theorem proving, using the superposition calculus. Instead of using function definitions as first-order axioms, we introduced new simplification rules for treating function definitions as rewrite rules. We guide inductive reasoning and strengthen induction schema using recursively defined functions. Our experimental results show that handling recursive definitions in superposition reasoning significantly improves automated reasoning with induction.
doi:10.34727/2021/isbn.978-3-85448-046-4_34 fatcat:jlqgdyqu4bacngrerqwbqmke2a