## Quotient Types: A Modular Approach (2002)

### Cached

### Download Links

Venue: | ITU-T Recommendation H.324 |

Citations: | 6 - 3 self |

### BibTeX

@INPROCEEDINGS{Nogin02quotienttypes:,

author = {Aleksey Nogin},

title = {Quotient Types: A Modular Approach},

booktitle = {ITU-T Recommendation H.324},

year = {2002},

pages = {263--280},

publisher = {Springer-Verlag}

}

### OpenURL

### Abstract

In this paper we introduce a new approach to axiomatizing quotient types in type theory. We suggest replacing the existing monolithic rule set by a modular set of rules for a specially chosen set of primitive operations. This modular formalization of quotient types turns out to be much easier to use and free of many limitations of the traditional monolithic formalization. To illustrate the advantages of the new approach, we show how the type of collections (that is known to be very hard to formalize using traditional quotient types) can be naturally formalized using the new primitives. We also show how modularity allows us to reuse one of the new primitives to simplify and enhance the rules for the set types.

### Citations

279 |
P.: Constructive mathematics and computer programming
- Martin-Löf
- 1982
(Show Context)
Citation Context ...bal equality relation which is not the desired one for many types (e.g. function types). The desired equalities have to be handled explicitly, which is quite burdensome. As in Martin-Lof type theory [=-=17]-=- (of which NuPRL type theory is an extension), in NuPRL each type comes with its own equality relation (the extensional one in the case of functions), and the typing rules guarantee that well{typed te... |

212 | A basis for a mathematical theory of computation
- McCarthy
- 1963
(Show Context)
Citation Context ...xpress the elimination rules for quotient types in a more natural way, but it seems that it is also a useful tool to have on its own. Atsrst, we considered adding the ndfg operation similar to amb in =-=[18]-=- and to approach used in [14]. The idea was to have ndft 1 ; t 2 g which can be either t 1 or t 2 nondeterministically. Then we were going to say that the expression that contains ndfg operators is we... |

167 | A judgmental reconstruction of modal logic
- Pfenning, Davies
(Show Context)
Citation Context ...19] for a description of MetaPRL's derived rules mechanism. 10 More specically, elimination rules should be locally complete and locally sound with respect to the introduction rules, as described in [=-=22]-=-. But since we believe that this third guideline is not as crucial as thesrst two, we chose not provide a detailed discussion of it.sAleksey Nogin In the traditional implementation of type theory the ... |

127 |
Metamathematical investigation of intuitionistic Arithmetic andAnalysis
- Troelstra
- 1973
(Show Context)
Citation Context ...anding the idea of quotient types is understanding the most commonly used semantics of the NuPRL type theory (and some other type theories as well) | the PER (partial equivalence relations) semantics =-=[24,1,2-=-]. In PER semantics each type is identied with a set of objects and an equivalence relation on that set that serves as an equality relation for objects of that type. This causes the equality predicate... |

108 |
Proofs as programs
- Bates, Constable
- 1985
(Show Context)
Citation Context ...I B[x]}, we know that wsA and we know that B[w] is non-empty; but in general we have no way of reconstructing a witness for B[w]. 4.2 Set Type: Traditional Approach Set types were first introduced in =-=[7]-=- and were also formalized in [3,9,12,24]. In those traditional implementations of type theory the rules for set types are somewhat asymmetric. When proving something like r; y: {x: n I ys{x: one was f... |

102 | Type Theory and Functional Programming
- Thompson
- 1991
(Show Context)
Citation Context ...form A = B 2 U i where U i is the i-th universe of types. However in this paper we will often omit \2 U i " for simplicity. 4 MetaPRL system uses the unit element () or \it" as a , NuPRL use=-=s Ax and [23]-=- uses Triv. Quotient Types | a Modular Approach 5 The squash operator (sometimes also called hide) was introduced in [9]. It is also used in MetaPRL [11,12,13] 5 . In the next section we will present ... |

78 | Building reliable, high-performance communication systems from components
- Liu, Kreitz, et al.
- 1999
(Show Context)
Citation Context ...f a fraction) with the appropriate equality predicate. Somewhat surprisingly, it turns out that formulating rules for these quotient types is far from being trivial and numerous applications of NuPRL =-=[6,16-=-] have run into diculties. Often a denition involving a quotient will look plausible, ? This work was partially supported by AFRL grant F49620-00-1-0209 and ONR grant N00014-01-1-0765 ?? Cornell Unive... |

76 |
Implementing Mathematics with the Nuprl Development System
- Constable, Allen, et al.
- 1986
(Show Context)
Citation Context ...city. MetaPRL system uses the unit element 0 or "it" as a , NuPRL uses Ax and [27] uses Triv. Quotient Types: A Modular Approach 267 The squash operator (sometimes also called hide) was intr=-=oduced in [9]-=-. It is also used in MetaPR[_ [11,12,14] 4 In the next section we will present the axiornatization we chose for the squash operator and we will explain our choices in Section 3. 2.2 Squash Operator: A... |

56 |
A Non-Type-Theoretic Semantics for Type-Theoretic Language
- Allen
- 1987
(Show Context)
Citation Context ...ke the theory as modular as possible and to make them as usable as possible in a tactic based interactive prover. All the new rules were checked and found valid in S. Allen's semantics of type theory =-=[1,2]-=-; these proofs are rather straightforward, so we omit them here. Proofs of all the derived rules were developed and checked in the MetaPR[_ system [12,14,13]. Although this paper focuses on NuPRL type... |

35 |
The Horus and Ensemble projects: Accomplishments and limitations
- Birman, Constable, et al.
- 2000
(Show Context)
Citation Context ...f a fraction) with the appropriate equality predicate. Somewhat surprisingly, it turns out that formulating rules for these quotient types is far from being trivial and numerous applications of NuPRL =-=[6,16-=-] have run into diculties. Often a denition involving a quotient will look plausible, ? This work was partially supported by AFRL grant F49620-00-1-0209 and ONR grant N00014-01-1-0765 ?? Cornell Unive... |

33 |
The MetaPRL Logical Programming Environment
- Hickey
- 2001
(Show Context)
Citation Context ...based interactive prover. All the new rules were checked and found valid in S. Allen's semantics of type theory [1,2]. Proofs of all the derived rules were developed and checked in the MetaPRL system =-=[12,13]-=-. Although this paper focuses on NuPRL type theory, the author believes that many ideas presented here are relevant to managing witnessing and functionality information in a constructive setting in ge... |

33 |
A Non-type-theoretic Definition of Martin-Löf’s Types
- Allen
- 1987
(Show Context)
Citation Context ...ake the theory as modular as possible and to make them as usable as possible in a tactic–based interactive prover. All the newrules were checked and found valid in S. Allen’s semantics of type theory =-=[1,2]-=-; these proofs are rather straightforward, so we omit them here. Proofs of all the derived rules were developed and checked in the MetaPRL system [12,14,13]. Although this paper focuses on NuPRL type ... |

31 | Doit-yourself type theory - Backhouse, Chisholm, et al. - 1989 |

30 | Semantic foundations for embedding HOL in NuPRL
- Howe
- 1996
(Show Context)
Citation Context ...for quotient types in a more natural way, but it seems that it is also a useful tool to have on its own. Atsrst, we considered adding the ndfg operation similar to amb in [18] and to approach used in =-=[14-=-]. The idea was to have ndft 1 ; t 2 g which can be either t 1 or t 2 nondeterministically. Then we were going to say that the expression that contains ndfg operators is well{formed i its meaning does... |

17 |
Sequent schema for derived rules
- Nogin, Hickey
- 2002
(Show Context)
Citation Context ...ent for NuPRL's hidden hypotheses mechanism, but eventually it became clear that it gives a mechanism substantially widely useful than NuPRL's hidden hypotheses. 6 We use the sequent schema syntax of =-=[19]-=- for specifying rules. Essentially, variables that are explicitly mentioned may occur freely only where they are explicitly mentioned.sAleksey Nogin Second, using (SquashMemElim) we can prove a strong... |

15 |
Types in logic, mathematics and programming
- Constable
(Show Context)
Citation Context ...le axioms to forrealize the set type: r; y: {x: A I ( SerElira) F [- tsA F [- [Bit]] F [- {x: A IB[x]}Type F [- ts{x. A I B[x]} (Setlntro) Now we can explain the problem with the traditional approach =-=[8,9,24,27]-=- there the set introduction rule is somewhat analogous to applying (Setlntro) and then as much (Unsquash) as possible and then (Squashlntro). Such rule does too many things at once and one of those th... |

15 | On the meaning and construction of the rules in Martin-Löf’s theory of types - Backhouse - 1987 |

13 | NuPRL-Light: An implementation framework for higer-order logics
- Hickey
- 1997
(Show Context)
Citation Context ...t element 0 or "it" as a , NuPRL uses Ax and [27] uses Triv. Quotient Types: A Modular Approach 267 The squash operator (sometimes also called hide) was introduced in [9]. It is also used in=-= MetaPR[_ [11,12,14]-=- 4 In the next section we will present the axiornatization we chose for the squash operator and we will explain our choices in Section 3. 2.2 Squash Operator: Axioms First, whenever A is non-empty, [A... |

11 |
Aleksey Nogin, Alexei Kopylov, et al. MetaPRL home page. http: //metaprl.org
- Hickey
(Show Context)
Citation Context ...based interactive prover. All the new rules were checked and found valid in S. Allen's semantics of type theory [1,2]. Proofs of all the derived rules were developed and checked in the MetaPRL system =-=[12,13]-=-. Although this paper focuses on NuPRL type theory, the author believes that many ideas presented here are relevant to managing witnessing and functionality information in a constructive setting in ge... |

10 |
Types and specifications
- Nordström, Petersson
- 1983
(Show Context)
Citation Context ...es to dependent ({x : A | P [x]}) and independent ({A | P }) set types, but for simplicity we only talk about independent set types. Set types were first introduced in [7] and were also formalized in =-=[3,9,20]-=-. Informally, {A | B} is the same type as A when B is a true proposition and it is empty when B is a false proposition. The key property of set type is that when we have a witness w ∈ {A | B}, we know... |

7 | Markov’s principle for propositional type theory
- Kopylov, Nogin
- 2001
(Show Context)
Citation Context ...knowing that some unknown x is in A (we call such A a squash{stable type), then [A] implies A: ` [A] ; x : A ` t 2 A ` A (SquashStable) Remark 2.3. The notion of squash stability is also discussed in =-=[15]-=- and is very similar to the notion of computational redundancy [5, Section 3.4]. Finally, we can prove that we can always eliminate the squashes in hypotheses not only when the conclusion is an equali... |

5 |
A Non-type-theoretic De of Martin-Lof's Types
- Allen
- 1987
(Show Context)
Citation Context ...ke the theory as modular as possible and to make them as usable as possible in a tactic{based interactive prover. All the new rules were checked and found valid in S. Allen's semantics of type theory =-=[1,2]-=-. Proofs of all the derived rules were developed and checked in the MetaPRL system [12,13]. Although this paper focuses on NuPRL type theory, the author believes that many ideas presented here are rel... |

3 |
van Renesse, Ohad Rodeh, and Werner Vogels. The Horus and Ensemble projects: Accomplishments and limitations
- Birman, Constable, et al.
- 2000
(Show Context)
Citation Context ...f a fraction) with the appropriate equality predicate. Somewhat surprisingly, it turns out that formulating rules for these quotient types is far from being trivial and numerous applications of NuPRL =-=[6,19]-=- have run into difficulties. Often a definition involving a quotient will look plausible, but after some (sometimes substantial) work it turns out that a key property is unprovable, or false. * This w... |

3 |
Normalized Types
- Courtieu
- 2001
(Show Context)
Citation Context ... uses the original N uPRI_ axiomatization for quotient types would still be valid under our modular axiomatization. For a more detailed comparison of the two axiomatizations see [22, Section 7.4]. In =-=[10] Pierre Co-=-urtieu attempts to add to Coq's Calculus of Constructions a notion very similar to quotient type. Instead of aiming at "general" quotient 6 Several members of NuPRL community made numerous a... |

1 |
A Non-type-theoretic Definition of Martin-LSf's Types
- Allen
- 1987
(Show Context)
Citation Context ...ke the theory as modular as possible and to make them as usable as possible in a tactic based interactive prover. All the new rules were checked and found valid in S. Allen's semantics of type theory =-=[1,2]-=-; these proofs are rather straightforward, so we omit them here. Proofs of all the derived rules were developed and checked in the MetaPR[_ system [12,14,13]. Although this paper focuses on NuPRL type... |

1 |
A note of subtypes in Martin-LSf's theory of types
- Backhouse
- 1984
(Show Context)
Citation Context ... know that B[w] is non-empty; but in general we have no way of reconstructing a witness for B[w]. 4.2 Set Type: Traditional Approach Set types were first introduced in [7] and were also formalized in =-=[3,9,12,24]-=-. In those traditional implementations of type theory the rules for set types are somewhat asymmetric. When proving something like r; y: {x: n I ys{x: one was forced to apply the set elimination rule ... |

1 | On the meaning and construction of the rules in Martin-LSf's theory of types - Backhouse - 1987 |

1 |
A note of subtypes in Martin-Löf’s theory of types
- Backhouse
- 1984
(Show Context)
Citation Context ...plies to dependent (fx : A j P [x]g) and independent (fA j Pg) set types, but for simplicity we only talk about independent set types. Set types weresrst introduced in [7] and were also formalized in =-=[3,9,20]-=-. Informally, fA j Bg is the same type as A when B is a true proposition and it is empty when B is a false proposition. The key property of set type is that when we have a witness w 2 fA j Bg, we know... |

1 |
Types and speci
- Nordstrom, Petersson
- 1983
(Show Context)
Citation Context ...plies to dependent (fx : A j P [x]g) and independent (fA j Pg) set types, but for simplicity we only talk about independent set types. Set types weresrst introduced in [7] and were also formalized in =-=[3,9,20]-=-. Informally, fA j Bg is the same type as A when B is a true proposition and it is empty when B is a false proposition. The key property of set type is that when we have a witness w 2 fA j Bg, we know... |

1 |
A note of subtypes in Martin-Löf’s theory of types
- RolandBackhouse
- 1984
(Show Context)
Citation Context ... know that B[w] is non-empty; but in general we have no way of reconstructing a witness for B[w]. 4.2 Set Type: Traditional Approach Set types were first introduced in [7] and were also formalized in =-=[3,9,12,24]-=-. In those traditional implementations of type theory the rules for set types are somewhat asymmetric. When proving something like Γ ; y : A ⊢ y ∈ A ′ Γ ; y : A; z : B[y] ⊢ B ′ [y] Γ ; y : {x : A | B[... |

1 | On the meaning andconstruction of the rules in Martin-Löf’s theory of types - RolandBackhouse - 1987 |

1 | andErik Saaman. Do-ityourself type theory - Backhouse, Malcolm - 1989 |

1 |
van Renesse, OhadRodeh, andWerner Vogels. The Horus andEnsemble projects: Accomplishments andlimitations
- Birman, Constable, et al.
- 2000
(Show Context)
Citation Context ...f a fraction) with the appropriate equality predicate. Somewhat surprisingly, it turns out that formulating rules for these quotient types is far from being trivial and numerous applications of NuPRL =-=[6,19]-=- have run into difficulties. Often a definition involving a quotient will look plausible, but after some (sometimes substantial) work it turns out that a key property is unprovable, or false. ⋆ This w... |

1 |
Types in logic, mathematics, andprogramming
- Constable
- 1998
(Show Context)
Citation Context ...y]]; ∆[y] ⊢ C[y] Γ ; y : {x : A | B[x]}; ∆[y] ⊢ C[y] (SetElim) Γ ⊢ t ∈ A Γ ⊢ [B[t]] Γ ⊢{x : A | B[x]} Type (SetIntro) Γ ⊢ t ∈{x : A | B[x]} Nowwe can explain the problem with the traditional approach =-=[8,9,24,27]-=- — there the set introduction rule is somewhat analogous to applying (SetIntro) and then as much (Unsquash) as possible and then (SquashIntro). Such rule does too many things at once and one of those ... |