Close-packing of equal spheres

From formulasearchengine
Revision as of 22:36, 7 January 2014 by en>EranVax (Undid revision 589610651 by EranVax (talk))
Jump to navigation Jump to search
The lambda cube. Direction of each arrow is direction of inclusion.

In mathematical logic and type theory, the λ-cube is a framework for exploring the axes of refinement in Coquand's calculus of constructions, starting from the simply typed lambda calculus (written as λ in the cube diagram to the right) as the vertex of a cube placed at the origin, and the calculus of constructions (higher order dependently-typed polymorphic lambda calculus; written as λPω in the diagram) as its diametrically opposite vertex. Each axis of the cube represents a new form of abstraction:

  • Terms depending on types, or polymorphism. System F, aka second order lambda calculus (written as λ2 in the diagram), is obtained by imposing only this property.
  • Types depending on types, or type operators. Simply typed lambda-calculus with type operators, λω (the diagram underlines the ω), is obtained by imposing only this property. Combined with System F it yields System Fω (written as λω without the underline in the diagram).
  • Types depending on terms, or dependent types. Imposing only this property yields λΠ (written as λP in the diagram), a type system closely related to LF.

All eight calculi include the most basic form of abstraction, terms depending on terms, ordinary functions as in the simply-typed lambda calculus. The richest calculus in the cube, with all three abstractions, is the calculus of constructions. All eight calculi are strongly normalizing.

Subtyping however is not represented in the cube, even though systems like F<:ω, known as higher-order bounded quantification, which combines subtyping and polymorphism are of practical interest, and can be further generalized to bounded type operators. Further extensions to F<:ω allow the definition of purely functional objects; these systems were generally developed after the lambda cube paper was published.[1]

The idea of the cube is due to the mathematician Henk Barendregt (1991). The framework of pure type systems generalizes the lambda cube in the sense that all corners of the cube, as well as many other systems can be represented as instances of this general framework.[2] This framework predates lambda cube a couple of years. In his 1991 paper, Barendregt also defines the corners of the cube in this framework.

See also

  • Some of the systems included in the cube were first defined in Automath.

Notes

43 year old Petroleum Engineer Harry from Deep River, usually spends time with hobbies and interests like renting movies, property developers in singapore new condominium and vehicle racing. Constantly enjoys going to destinations like Camino Real de Tierra Adentro.

References

Template:Refbegin

  • Morten Heine Sørensen, Paweł Urzyczyn, Lectures on the Curry-Howard isomorphism, Elsevier, 2006, ISBN 0-444-52077-5, chapter 14, "Pure type systems and the lambda cube"
  • H.P. Barendregt, Introduction to generalized type systems, Journal of Functional Programming, 1(2):125-154, April 1991.
  • 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534

Template:Refend

Further reading

External links

  1. Pierce, 2002, chapters 31 and 32
  2. Pierce, 2002, p. 466