Higher-order unification with dependent function types [chapter]

Conal M. Elliott
1989 Lecture Notes in Computer Science  
Roughly fteen years ago, Huet developed a complete semidecision algorithm for uni cation in the simply typed -calculus ( ! ). In spite of the undecidability of this problem, his algorithm is quite usable in practice. Since then, many important applications have come about in such areas as theorem proving, type inference, program transformation, and machine learning. Another development is the discovery that by enriching ! to include dependent function types, the resulting calculus ( ) forms the
more » ... basis of a very elegant and expressive Logical Framework, encompassing the syntax, rules, and proofs for a wide class of logics. This paper presents an algorithm in the spirit of Huet's, for uni cation in . This algorithm gives us the best of both worlds: the automation previously possible in ! , and the greatly enriched expressive power of . It can be used to considerable advantage in many of the current applications of Huet's algorithm, and has important new applications as well. These include automated and semi-automated theorem proving in encoded logics, and automatic type inference in a variety of encoded languages.
doi:10.1007/3-540-51081-8_104 fatcat:vn7qtt37m5a3xadhfrnp7pocry