Dependent Intersection: A New Way of Defining Records in Type Theory

  • Authors:
  • Alexei Kopylov

  • Affiliations:
  • -

  • Venue:
  • LICS '03 Proceedings of the 18th Annual IEEE Symposium on Logic in Computer Science
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

Records and dependent records are a powerful toolfor programming, representing mathematical concepts, andprogram verification. In the last decade several type systemswith records as primitive types were proposed. Thequestion is arose: whether it is possible to define recordtype in existent type theories using standard types withoutintroducing new primitives.It was known that independent records can be defined intype theories with dependent functions or intersection. Onthe other hand dependent records cannot be formed usingstandard types. Hickey introduced a complex notion of verydependent functions to represent dependent records. In thecurrent paper we extend Martin-Löf's type theory with asimpler type constructor dependent intersection, i.e., the intersectionof two types, where the second type may dependon elements of the first one (not to be confused with the intersectionof a family of types). This new type constructorallows us to define dependent records in a very simple way.It also allows us to define the set type constructor.