Abstract
The quotient operation is a standard feature of set theory, where a set is partitioned into subsets by an equivalence relation. We reinterpret this idea for higher order logic, where types are divided by an equivalence relation to create new types, called quotient types. We present a design to mechanically construct quotient types as new types in the logic, and to support the automatic lifting of constants and theorems about the original types to corresponding constants and theorems about the quotient types. This design exceeds the functionality of Harrison’s package, creating quotients of multiple mutually recursive types simultaneously, and supporting the equivalence of aggregate types, such as lists and pairs. Most importantly, this design supports the creation of higher order quotients, which enable the automatic lifting of theorems with quantification over functions of any higher order.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Barendregt, H.P.: The Lambda Calculus, Syntax and Semantics. North-Holland, Amsterdam (1981)
Bruce, K., Mitchell, J.C.: PER models of subtyping, recursive types and higher-order polymorphism. Principles of Programming Languages 19, 316–327 (1992)
Chicli, L., Pottier, L., Simpson, C.: Mathematical Quotients and Quotient Types in Coq. In: Geuvers, H., Wiedijk, F. (eds.) TYPES 2002. LNCS, vol. 2646, pp. 95–107. Springer, Heidelberg (2003)
Enderton, H.B.: Elements of Set Theory. Academic Press, London (1977)
Geuvers, H., Pollack, R., Wiekijk, F., Zwanenburg, J.: A constructive algebraic hierarchy in Coq. Journal of Symbolic Computation 34(4), 271–286 (2002)
Gordon, M.J.C., Melham, T.F.: Introduction to HOL. Cambridge University Press, Cambridge (1993)
Gordon, A.D., Melham, T.F.: Five Axioms of Alpha Conversion. In: von Wright, J., Harrison, J., Grundy, J. (eds.) TPHOLs 1996. LNCS, vol. 1125, Springer, Heidelberg (1996)
Harrison, J.: Theorem Proving with the Real Numbers, vol. §2.11, pp. 33–37. Springer, Heidelberg (1998)
Hofmann, M.: A simple model for quotient types. In: Dezani-Ciancaglini, M., Plotkin, G. (eds.) TLCA 1995. LNCS, vol. 902, pp. 216–234. Springer, Heidelberg (1995)
Homeier, P.V.: Higher Order Quotients in Higher Order Logic. In Preparation; draft, available at http://www.cis.upenn.edu/~hol/quotients
Kalker, T.: at http://www.ftp.cl.cam.ac.uk/ftp/hvg/info-hol-archive/00xx/0082
Leisenring, A.C.: Mathematical Logic and Hilbert’s ε-Symbol. Gordon and Breach, NewYork (1969)
Moore, G.H.: Zermelo’s Axiom of Choice: It’s Origins, Development, and Influence. Springer, Heidelberg (1982)
Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL. Springer, Heidelberg (2002)
Owre, S., Shankar, N.: Theory Interpretations in PVS, Technical Report SRI-CSL-01-01, Computer Science Lab., SRI International, Menlo Park, CA (April 2001)
Nogin, A.: Quotient Types: A Modular Approach. In: Carreño, V.A., Muñoz, C.A., Tahar, S. (eds.) TPHOLs 2002. LNCS, vol. 2410, pp. 263–280. Springer, Heidelberg (2002)
Paulson, L.: Defining Functions on Equivalence Classes, ACM Transactions on Computational Logic, in press. Previously issued as Report, Computer Lab, University of Cambridge, April 20 (2004)
Robinson, E.: How Complete is PER? In: Fourth Annual Symposium on Logic in Computer Science. LICS, pp. 106–111 (1989)
Slotosch, O.: Higher Order Quotients and their Implementation in Isabelle HOL. In: Gunter, E.L., Felty, A.P. (eds.) TPHOLs 1997. LNCS, vol. 1275, pp. 291–306. Springer, Heidelberg (1997)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Homeier, P.V. (2005). A Design Structure for Higher Order Quotients. In: Hurd, J., Melham, T. (eds) Theorem Proving in Higher Order Logics. TPHOLs 2005. Lecture Notes in Computer Science, vol 3603. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11541868_9
Download citation
DOI: https://doi.org/10.1007/11541868_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-28372-0
Online ISBN: 978-3-540-31820-0
eBook Packages: Computer ScienceComputer Science (R0)