Abstract
A type system for the lambda-calculus enriched with recursive and corecursive functions over equi-inductive and -coinductive types is presented in which all well-typed programs are strongly normalizing. The choice of equi-inductive types, instead of the more common iso-inductive types, influences both reduction rules and the strong normalization proof. By embedding iso- into equi-types, the latter ones are recognized as more fundamental. A model based on orthogonality is constructed where a semantical type corresponds to a set of observations, and soundness of the type system is proven.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Abel, A.: Polarized subtyping for sized types. In: Grigoriev, D., Harrison, J., Hirsch, E.A. (eds.) CSR 2006. LNCS, vol. 3967, pp. 381–392. Springer, Heidelberg (2006)
Abel, A.: A Polymorphic Lambda-Calculus with Sized Higher-Order Types. Ph.D. thesis, Ludwig-Maximilians-Universität München (2006)
Abel, A.: Semi-continuous sized types and termination. In: Ésik, Z. (ed.) CSL 2006. LNCS, vol. 4207, pp. 72–88. Springer, Heidelberg (2006)
Abel, A.: Towards generic programming with sized types. In: Uustalu, T. (ed.) MPC 2006. LNCS, vol. 4014, pp. 10–28. Springer, Heidelberg (2006)
Abel, A., Matthes, R.: Fixed points of type constructors and primitive recursion. In: Marcinkowski, J., Tarlecki, A. (eds.) CSL 2004. LNCS, vol. 3210, pp. 190–204. Springer, Heidelberg (2004)
Altenkirch, T.: Constructions, Inductive Types and Strong Normalization. Ph.D. thesis, University of Edinburgh (1993)
Altenkirch, T.: Logical relations and inductive/coinductive types. In: Gottlob, G., Grandjean, E., Seyr, K. (eds.) CSL 1999. LNCS, vol. 1683, pp. 343–354. Springer, Heidelberg (1999)
Barthe, G., Frade, M.J., Giménez, E., Pinto, L., Uustalu, T.: Type-based termination of recursive definitions. Math. Struct. in Comput. Sci. 14, 1–45 (2004)
Barthe, G., Grégoire, B., Pastawski, F.: CIC:̂ Type-based termination of recursive definitions in the Calculus of Inductive Constructions. In: Hermann, M., Voronkov, A. (eds.) LPAR 2006. LNCS (LNAI), vol. 4246, pp. 257–271. Springer, Heidelberg (2006)
Blanqui, F.: A type-based termination criterion for dependently-typed higher-order rewrite systems. In: van Oostrom, V. (ed.) RTA 2004. LNCS, vol. 3091, pp. 24–39. Springer, Heidelberg (2004)
Blanqui, F., Riba, C.: Combining typing and size constraints for checking the termination of higher-order conditional rewrite systems. In: Hermann, M., Voronkov, A. (eds.) LPAR 2006. LNCS (LNAI), vol. 4246, pp. 105–119. Springer, Heidelberg (2006)
Geuvers, H.: Inductive and coinductive types with iteration and recursion. In: Nordström, B., Pettersson, K., Plotkin, G. (eds.) Types for Proofs and Programs (TYPES’92), Båstad, Sweden, pp. 193–217 (1992)
Giménez, E.: Structural recursive definitions in type theory. In: Larsen, K.G., Skyum, S., Winskel, G. (eds.) ICALP 1998. LNCS, vol. 1443, pp. 397–408. Springer, Heidelberg (1998)
Girard, J.-Y.: Locus solum: From the rules of logic to the logic of rules. Math. Struct. in Comput. Sci. 11, 301–506 (2001)
Goguen, H.: Typed operational semantics. In: Dezani-Ciancaglini, M., Plotkin, G.D. (eds.) TLCA 1995. LNCS, vol. 902, pp. 186–200. Springer, Heidelberg (1995)
Hughes, J., Pareto, L., Sabry, A.: Proving the correctness of reactive systems using sized types. In: POPL’96. Proc. of the 23rd ACM Symp. on Principles of Programming Languages, pp. 410–423 (1996)
Joachimski, F., Matthes, R.: Short proofs of normalization. Archive of Mathematical Logic 42, 59–87 (2003)
Lindley, S., Stark, I.: Reducibility and TT-lifting for computation types. In: Urzyczyn, P. (ed.) TLCA 2005. LNCS, vol. 3461, Springer, Heidelberg (2005)
Matthes, R.: Extensions of System F by Iteration and Primitive Recursion on Monotone Inductive Types. Ph.D. thesis, Ludwig-Maximilians-University (1998)
Matthes, R.: Non-strictly positive fixed-points for classical natural deduction. Ann. Pure Appl. Logic 133, 205–230 (2005)
Mendler, N.P.: Recursive types and type constraints in second-order lambda calculus. In: LICS’87. Proc. of the 2nd IEEE Symp. on Logic in Computer Science, pp. 30–36. IEEE Computer Society Press, Los Alamitos (1987)
Mendler, N.P.: Inductive types and type constraints in the second-order lambda calculus. Annals of Pure and Applied Logic 51, 159–172 (1991)
Pareto, L.: Types for Crash Prevention. Ph.D. thesis, Chalmers University of Technology (2000)
Parigot, M.: Recursive programming with proofs. Theor. Comput. Sci. 94, 335–356 (1992)
Parigot, M.: Proofs of strong normalization for second order classical natural deduction. The Journal of Symbolic Logic 62, 1461–1479 (1997)
Raffalli, C.: Data types, infinity and equality in system af 2. In: Meinke, K., Börger, E., Gurevich, Y. (eds.) CSL 1993. LNCS, vol. 832, pp. 280–294. Springer, Heidelberg (1994)
Steffen, M.: Polarized Higher-Order Subtyping. Ph.D. thesis, Technische Fakultät, Universität Erlangen (1998)
van Raamsdonk, F., Severi, P., Sørensen, M.H., Xi, H.: Perpetual reductions in lambda calculus. Inf. Comput. 149, 173–225 (1999)
Vouillon, J.: Subtyping union types. In: Marcinkowski, J., Tarlecki, A. (eds.) CSL 2004. LNCS, vol. 3210, pp. 415–429. Springer, Heidelberg (2004)
Vouillon, J., Melliès, P.-A.: Semantic types: A fresh look at the ideal model for types. In: Jones, N.D., Leroy, X. (eds.) POPL 2004. Proc. of the 31st ACM Symp. on Principles of Programming Languages, pp. 52–63. ACM Press, New York (2004)
Xi, H.: Dependent types for program termination verification. J. Higher-Order and Symb. Comput. 15, 91–131 (2002)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer Berlin Heidelberg
About this paper
Cite this paper
Abel, A. (2007). Strong Normalization and Equi-(Co)Inductive Types. In: Della Rocca, S.R. (eds) Typed Lambda Calculi and Applications. TLCA 2007. Lecture Notes in Computer Science, vol 4583. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-73228-0_3
Download citation
DOI: https://doi.org/10.1007/978-3-540-73228-0_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-73227-3
Online ISBN: 978-3-540-73228-0
eBook Packages: Computer ScienceComputer Science (R0)