Annals of Mathematics and Artificial Intelligence
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 . 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.
Lu, Jianguo; Mylopoulos, John; Harao, Masateru; and Hagiya, Masami. (2000). Higher order generalization and its application in program verification. Annals of Mathematics and Artificial Intelligence, 28 (1), 107-126.