ABSTRACT
Positive recursive (fixpoint) types can be added to the polymorphic (Church-style) lambda calculus λ2 (System F) in several different ways, depending on the choice of the elimination operator. We compare several such definitions and we show that they fall into two equivalence classes with respect to mutual interpretability by means of beta-eta reductions. Elimination operators for fixpoint types are thus classified as either "iterators" or "recursors". This classification has an interpretation in terms of the Curry-Howard correspondence: types of iterators and recursors can be seen as images of induction axioms under different dependency-erasing maps. Systems with recursors are beta-eta equivalent to a calculus λ2U of recursive types with the operators Fold: σ[μα.σ/α]←μα.σ and Unfold: μα.σ←σ[μα.σ/α], where the composition Unfold or Fold reduces to identity.It is known that systems with iterators can be defined within λ2, by means of beta reductions. We conjecture that systems with recursors can not. In this paper we show that the system λ2U does not have such a property. For this we study the notion of polymorphic type embeddability (via (beta) left-invertible terms) and we show that if a type σ is embedded into another type τ then τ must be of depth at least equal to the depth of σ.
- 1.Asperti, A., Danos, V., Laneve, C., Regnier, L., Paths in the lambda-calculus. PTOC 9th IEEE Symposium on Logic in Computer Science, IEEE, 1994, pp. 426-436.Google Scholar
- 2.Asperti, A., Guerrini, S., The Optimal Implementation of Functional Programming Languages, Cambridge ?&acts in Theoretical Computer Science 45, Cambridge University Press, Cambridge, 1998. Google ScholarDigital Library
- 3.van Bakel, S., Liquori, L., Ronchi Della Rocca, S., Urzyczyn, P., Comparing cubes of typed and type assignment systems, Annals of Pure and Applied Logic 86, 1997, 267-303.Google ScholarCross Ref
- 4.Bohm, C., Berarducci, A., Automatic synthesis of typed A-programs on term algebras, Theoretical Computer Science, 39(2/3), 1985, 135-154.Google ScholarCross Ref
- 5.Bruce, K., Longo, G., Provable isomorphisms and domain equations in models of typed languages, Proc. 17th Symposium on Theory of Computing, ACM, 1985, 263-272. Google ScholarDigital Library
- 6.Cardone, F., Coppo, M., Two extensions of Curry's type inference system, in Logic and Computer Science (P. Odifreddi, Ed.), Academic Press, 1990, pp. 19-75.Google Scholar
- 7.Danos, V., Regnier, L., Proof-nets and the Hilbert space, in Advances in Linear Logic (Girard, Lafont and Regnier, Eds.), London Mathematical Society Lecture Notes, 222, Cambridge University Press, Cambridge, 1995. Google ScholarDigital Library
- 8.Dezani, M., Characterization of normal forms posessing an inverse in the A&calculus, Theoretical Computer Science 2, 1976, 323-337.Google ScholarCross Ref
- 9.Di Cosmo, R., Zsomorphisms of types: from lambdacalculus to information retrieval and language design, Birkhauser, 1995. Google ScholarDigital Library
- 10.Geuvers, H., Inductive and coinductive types with iteration and recursion, in: Proceedings of the Workshop on Types for Proofs and Programs, B&.stad, Sweden, 1992, pp. 193-217.Google Scholar
- 11.Girard, J.-Y., Geometry of Interaction I: Interpretation of System F, Proc. Logic Colloquium'88 (Ferro, Bonotto, Valentini and Zanardo, Eds.), Elsevier Science, 1989, pp. 221-260.Google Scholar
- 12.Girard, J.-Y., Lafont, Y., Taylor, P., Proofs and Types. Cambridge University Press, Cambridge, 1990. Second edition. Google ScholarDigital Library
- 13.Harper, R. and Honsell, F. and Plotkin, G., A framework for defining logics, Journal of the ACM, 40(l), 1993, 143-184. Google ScholarDigital Library
- 14.Krivine, J.-L., Parigot, M., Programming with proofs, J. Znf. Process. Cybern. (EIK), 26 (3), 1990, 149-167. Google ScholarDigital Library
- 15.Leivant, D., Reasoning about functional programs and complexity classes associated with type disciplines, PTOC. 24th Symposium on Foundations of Computer Science, IEEE, 1983, pp. 460-469.Google ScholarDigital Library
- 16.Leivant, D., Contracting proofs to programs, in: Logic an Computer Science (P. Odifreddi, ed.), Academic Press, 1990, pp. 279-327.Google Scholar
- 17.Leivant, D., Functions over free algebras definable in the simply typed lambda calculus, Theoretical Computer Science, 121, 1993, 309-321. Google ScholarDigital Library
- 18.Margaria, I., Zacchi, M., Right and left invertibility in X-/3-calculus, R.A.I.R.O. Informatique The'orique/Theoretical Informatics, 17 (l), 1983, 71-88.Google Scholar
- 19.Matthes, R., Extensions of System F by Iteration and Primitive Recursion on Monotone Inductive Types, PhD Thesis, University of Munich, 1998.Google Scholar
- 20.Mendler, N.P., Recursive types and type constraints in the second-order lambda calculus, Proc. 2nd Symposium on Logic in Computer Science, 1987, pp. 30-36.Google Scholar
- 21.Mendler, N.P., Inductive types and type constraints in the second-order lambda calculus, Annals of Pure and Applied Logic, 51 (1991), 159-172.Google ScholarCross Ref
- 22.Parigot, M., On the representation of data in lambdacalculus, Proc. Computer Science Logic'89, (E. Bijrger, H. Kleine Biining, M.M. Richter, Eds.), LNCS 440, Springer-Verlag, Berlin, pp. 309-311. Google ScholarDigital Library
- 23.Parigot, M., Recursive programming with proofs, Theoretical Computer Science, 94, 1992, 335-356. Google ScholarDigital Library
- 24.Reynolds, J.C., Polymorphism is not set-theoretic, PTOC. Semantics of data types, LNCS 173, Springer- Verlag, Berlin, 1984, pp. 145-156.Google Scholar
- 25.Reynolds, J.C., Plotkin, G.D., On functors expressible in the polymorphic typed lambda calculus, Information and Computation, 105(l), 1993, l-29. Google ScholarDigital Library
- 26.Splawski, Z., Proof-Theoretic Approach to Inductive Definitions in ML-like Programming Language versus Second-Order Lambda Calculus, PhD Thesis, Wroclaw University, 1993.Google Scholar
- 27.Urzyczyn, P., Positive recursive type assignment, Fundamenta Informaticae, 28(1-21, 1996, 197-209. Google ScholarDigital Library
- 28.Urzyczyn, P., R&cursive types and type embeddings, Research Report TR 99-01 (256), Warsaw University, 1999.Google Scholar
- 29.Wraith, G.C., A note on categorical data types, Category Theory and Computer Science (D.H. Pitt, D.E. Rydeheard, P. Dybjer, A.M. Pitts, A. PoignB, eds.), LNCS 389, Springer-Verlag, Berlin 1989, pp. 118-127. Google ScholarDigital Library
Index Terms
- Type fixpoints: iteration vs. recursion
Recommendations
Type fixpoints: iteration vs. recursion
Positive recursive (fixpoint) types can be added to the polymorphic (Church-style) lambda calculus λ2 (System F) in several different ways, depending on the choice of the elimination operator. We compare several such definitions and we show that ...
Grounded fixpoints
AAAI'15: Proceedings of the Twenty-Ninth AAAI Conference on Artificial IntelligenceAlgebraical fixpoint theory is an invaluable instrument for studying semantics of logics. For example, all major semantics of logic programming, autoepistemic logic, default logic and more recently, abstract argumentation have been shown to be induced ...
Formalizing Type Operations Using the “Image” Type Constructor
In this paper we introduce a new approach to formalizing certain type operations in type theory. Traditionally, many type constructors in type theory are independently axiomatized and the correctness of these axioms is argued semantically. In this paper ...
Comments