vix.ing · top · new · best · stats · spec

Dependent intersection: a new way of defining records in type theory

2003/12/22 by Alexei Kopylov · 1 citation
Computer Science · Engineering · #Logic, programming, and type systems #Software Engineering Research #Formal Methods in Verification #Intersection (aeronautics) #Type (biology) #Computer science #Type theory #Hickey #Data type #Abstract data type #Set (abstract data type) #Theoretical computer science #Programming language #Engineering

paper · doi:10.1109/lics.2003.1210048

openalex publication_date 2003/12/22 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/29

Abstract

Records and dependent records are a powerful tool for programming, representing mathematical concepts, and program verification. In this last decade several type systems with records as primitive types were proposed. The question is arisen whether it is possible to define record type in existent type theories using standard types without introducing new primitives. It was known that independent records can be defined in type theories with dependent functions or intersection. On the other hand dependent records cannot be formed using standard types. Hickey introduced a complex notion of very dependent functions to represent dependent records. In the current paper we extend Martin-Lof's type theory with a simpler type constructor dependent intersection, i.e., the intersection of two types, where the second type may depend on elements of the first one (not to be confused with the intersection of a family of types). This new type constructor allows us to define dependent records in a very simple way. It also allows us to define the set type constructor.

Citations

Cited by