Abstract
Reduction, equality, and unification are studied for a family of simply typed λ-calculi with subtypes. The subtype relation is required to relate base types only to base types and to satisfy some order-theoretic conditions. Constants are required to have a least type, that is, ‘no overloading’. We define the usual β and a subtype-dependent η-reduction. These are related to a typed equality relation and shown to be confluent in a certain sense. We present a generic algorithm for preunification modulo βη-conversion and an arbitrary subtype relation. Furthermore it is shown that unification with respect to any subtype relation is universal.
Similar content being viewed by others
Explore related subjects
Discover the latest articles and news from researchers in related subjects, suggested using machine learning.References
Andrews, P. B., Issar, S., Nesmith, D. and Pfenning, F.: The TPS theorem proving system, in M. Stickel (ed.),Proc. 10th Int. Conf. Automated Deduction, Springer-Verlag LNCS 449, 1990, pp. 641–642.
Barendregt, H.:The λ-Calculus — Its Syntax and Semantics, North-Holland, Amsterdam, 1984.
Cardelli, L.: A semantics of multiple inheritance,Information and Computation 76 (1988), 130–164.
Curien, P.-L. and Ghelli, G.: Subtyping + extensionality: Confluence of βη top reduction inF ⩽, in T. Ito and A. R. Meyer (eds.),Proc. Conf. Theoretical Aspects of Computer Software, Springer-Verlag LNCS 526, 1991, pp. 731–749.
Huet, G.: A unification algorithm for typed λ-calculus,Theoretical Computer Science 1 (1975), 27–57.
Huet, G. and Lang, B.: Proving and applying program transformations expressed with second-order patterns,Acta Informatica 11 (1978) 31–55.
Jouannaud, J.-P. and Kirchner, C.: Solving equations in abstract algebras: A rule-based survey of unification, in J.-L. Lassez and G. Plotkin (eds.),Computational Logic: Essays in Honor of Alan Robinson, MIT Press, 1991.
Kahn, B.: Natural semantics, inProc. 4th Symp. Theoretical Aspects of Computer Science, Springer-Verlag LNCS 247, 1987, pp. 22–39.
Klop, J. W.:Combinatory Reduction Systems, Mathematical Centre Tracts 127. Mathematisch Centrum, Amsterdam, 1980.
Kohlhase, M.: Unification in order-sorted type theory, in A. Voronkov (ed.),Proc. Int. Conf. on Logic Programming and Automated Reasoning, Springer-Verlag LNCS 624, 1992, pp. 421–432.
Kohlhase, M. and Pfenning, F.: Unification in a λ-calculus with intersection types, in D. Miller (ed.),Proc. Int. Symp. on Logic Programming, MIT Press, 1993, pp. 488–505.
Miller, D.: A logic programming language with lambda-abstraction, function variables, and simple unification,Journal of Logic and Computation 1(4) (1991) 497–536.
Miller, D.: Abstract syntax and logic programming, inLogic Programming: Proceedings of the First and Second Russian Conferences on Logic Programming, in Lecture Notes in Artificial Intelligence #592, Springer-Verlag, 1992, pp. 322–337.
Mitchell, J. C.: Coercion and type inference, inProc. 11th ACM Symp. Principles of Programming Languages, 1984, pp. 175–185.
Mitchell, J. C.: Type inference with simple subtypes,J. Functional Programming 1 (1991), 245–285.
Nadathur, G. and Miller, D.: An overview of λ Prolog, in R. A. Kowalski and K. A. Bowen (eds.),Proc. 5th Int. Logic Programming Conference, MIT Press, 1988, pp. 810–827.
Nipkow, T.: Higher-order unification, polymorphism, and subsorts, inProc. 2nd Int. Workshop Conditional and Typed Rewriting Systems, Springer-Verlag LNCS 516, 1991, pp. 436–447.
Nipkow, T.: Orthogonal higher-order rewrite systems are confluent, in M. Bezem and J. F. Groote (eds.),Proc. Int. Conf. Typed Lambda Calculi and Applications, Springer-Verlag LNCS 664, 1993, pp. 306–317.
Nipkow, T. and Qian, Z.: Reduction and unification in lambda calculi with subtypes, in D. Kapur (ed.),Proc. 11th Int. Conf. Automated Deduction, Springer-Verlag LNCS 607, 1992, pp. 66–70.
Paulson, L.: Isabelle: The next 700 theorem provers, in P. Odifreddi (ed.),Logic and Computer Science, Academic Press, 1990, pp. 361–385.
Pfenning, F. and Elliott, C.: Higher-order abstract syntax, inProc. SIGPLAN '88 Symp. Language Design and Implementation, ACM Press, 1988, pp. 199–200.
Qian, Z.: An algebraic semantics of higher-order types with subtypes,Acta Informatica 30 (1993), 569–607.
Schmidt-Schauß, M.:Computational Aspects of an Order-Sorted Logic with Term Declarations, Springer-Verlag LNCS 395, 1989.
Smolka, G., Nutt, W., Goguen, J. and Meseguer, J.: Order-sorted equational computation, in H. Ait-Kaci and M. Nivat (eds.),Resolution of Equations in Algebraic Structures, Volume 2, Academic Press, New York, 1989, pp. 297–367.
Snelting, G.: The calculus of context relations,Acta Informatica 28 (1991), 411–445.
Snyder, W. and Gallier, J.: Higher-order unification revisited: Complete sets of transformations,J. Symbolic Computation 8 (1989) 101–140.
Walther, C.: A mechanical solution of Schubert's Steamroller by many-sorted resolution,Artificial Intelligence 26 (1985) 217–224.
Walther, C.: Many-sorted unification,J. ACM 35 (1988), 1–17.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Qian, Z., Nipkow, T. Reduction and unification in lambda calculi with a general notion of subtype. J Autom Reasoning 12, 389–406 (1994). https://doi.org/10.1007/BF00885767
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00885767