Higher order generalization and its application in program verification

Author: Lu J.  

Publisher: Springer Publishing Company

ISSN: 1012-2443

Source: Annals of Mathematics and Artificial Intelligence, Vol.28, Iss.1-4, 2000-01, pp. : 107-126

Disclaimer: Any content in publications that violate the sovereignty, the constitution or regulations of the PRC is not accepted or approved by CNPIEC.

Previous Menu Next

Abstract

Generalization is a fundamental operation of inductive inference. While first order syntactic generalization (anti-unification) is well understood, its various extensions are often needed in applications. This paper discusses syntactic higher order generalization in a higher order language 2 [1]. Based on the application ordering, we prove that least general generalization exists for any two terms and is unique up to renaming. An algorithm to compute the least general generalization is also presented. To illustrate its usefulness, we propose a program verification system based on higher order generalization that can reuse the proofs of similar programs.