Assuming termination

  • Authors:
  • David Greve

  • Affiliations:
  • Rockwell Collins Advanced Technology Center, Cedar Rapids, IA

  • Venue:
  • Proceedings of the Eighth International Workshop on the ACL2 Theorem Prover and its Applications
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

A requirement for the admission of a recursive function definition in ACL2 is a proof that the recursion terminates. Establishing termination involves identifying a well-founded relation and an appropriate measure function that decreases according to the well-founded relation with each recursive call. Depending on the domain this process may prove difficult, unnecessary or even impossible. Manolios and Moore introduced a method for admitting tail-recursive function definitions that does not require the specification of a measure. Their method, however, does not produce an induction scheme. We present an extension of their method that enables the admission of arbitrary recursive function definitions and their associated induction schemes augmented with a termination check and justified by a partial measure. We demonstrate the use of this method by defining the tarai function and proving by induction its unwinding under the assumption that it terminates.