## Working with Mathematical Structures in Type Theory

### Cached

### Download Links

- [www.cs.unibo.it]
- [www.msr-inria.inria.fr]
- [www.cs.unibo.it]
- DBLP

### Other Repositories/Bibliography

Citations: | 7 - 3 self |

### BibTeX

@MISC{Coen_workingwith,

author = {Claudio Sacerdoti Coen and Enrico Tassi},

title = {Working with Mathematical Structures in Type Theory},

year = {}

}

### OpenURL

### Abstract

Abstract. We address the problem of representing mathematical structures in a proof assistant which: 1) is based on a type theory with dependent types, telescopes and a computational version of Leibniz equality; 2) implements coercive subtyping, accepting multiple coherent paths between type families; 3) implements a restricted form of higher order unification and type reconstruction. We show how to exploit the previous quite common features to reduce the “syntactic ” gap between pen&paper and formalised algebra. However, to reach our goal we need to propose unification and type reconstruction heuristics that are slightly different from the ones usually implemented. We have implemented them in Matita. 1

### Citations

84 | An Extended Calculus of Constructions
- Luo
- 1990
(Show Context)
Citation Context ... looks like a Ψ type, but makes it first fields manifest. However, in Sect. 5.2.2 he also argues for the left-associating solution. 4 Type1 in the definition of r1 is the second universe in Luo’s ECC =-=[13]-=-. Note that Type has type Type1s2.2 Weakly manifest types Working with Mathematical Structures in Type Theory 5 In this paper we drop Σ/Ψ types in favour of primitive records, whose inhabitants do not... |

65 | A General Formulation of Simultaneous Inductive-Recursive Definitions in Type Theory
- Dybjer
- 2000
(Show Context)
Citation Context ...16], Randy Pollack shows that dependently typed records with uniform field projections and with can be implemented in a type theory extended with inductive types and the induction-recursion principle =-=[10]-=-. However, inductionrecursion is also not implemented in most proof assistants, and we are looking for a solution in a simpler framework where we only have primitive records (or even simply primitive ... |

63 |
A computer-checked proof of the four-colour theorem. Technical report available from http://research.microsoft.com/˜gonthier/4colproof.pdf
- Gonthier
(Show Context)
Citation Context ...widely used in mathematics, like graphs for example, have no simple and handy representation (see for example the complex hypermap construction used to describe planar maps in the four colour theorem =-=[11]-=-). On the contrary, some widely studied fields of mathematics do have a precise and formal description of the objects they study. The most well known one is algebra, where a rigorous hierarchy of stru... |

47 | Coercive subtyping
- Luo
- 1999
(Show Context)
Citation Context ...e path in the graph. In order to avoid random choices that lead to unwanted interpretations and to type errors (in systems having dependent types), coherence of the coercion graph is usually required =-=[14,3]-=-. The graph is coherent when the diagram commutes according to βη-conversion. However in the following we drop η-conversion which is not supported in Coq and Matita. One interesting case of multiple c... |

41 | Typing algorithm in type theory with inheritance
- Saïbi
- 1997
(Show Context)
Citation Context ... problem still arises, we need to introduce type reconstruction and coercion synthesis algorithms more formally. 4.1 Type reconstruction algorithm Coq, Lego and Matita use similar algorithms based on =-=[1,2,17]-=- to insert coercions in user provided ill-typed terms to make them well-typed. Coercions can be inserted in three different positions: around arguments expected to be sorts (e.g. when typing bound var... |

30 |
The machine-checked literate formalisation of algebra in type theory
- Bailey
- 1998
(Show Context)
Citation Context ... problem still arises, we need to introduce type reconstruction and coercion synthesis algorithms more formally. 4.1 Type reconstruction algorithm Coq, Lego and Matita use similar algorithms based on =-=[1,2,17]-=- to insert coercions in user provided ill-typed terms to make them well-typed. Coercions can be inserted in three different positions: around arguments expected to be sorts (e.g. when typing bound var... |

24 | Extension of Martin Löf’s type theory with record types and subtyping
- Betarte, Tasistro
- 1999
(Show Context)
Citation Context ...use telescopes. Beware of the differences between our records — which are implemented, at least as telescopes, in most systems like Coq — and dependently typed records “à la Betarte/Tasistro/Pollack” =-=[5,4,8]-=-: 1. there is no “dot” constructor to uniformly access by name fields of any record. Thus the names of these projections must be different, as .CApo and .CAvs. 2 The syntax is the one of the Matita pr... |

21 | A Logical Framework with Dependently Typed Record
- Coquand, Takeyama
- 2005
(Show Context)
Citation Context ...use telescopes. Beware of the differences between our records — which are implemented, at least as telescopes, in most systems like Coq — and dependently typed records “à la Betarte/Tasistro/Pollack” =-=[5,4,8]-=-: 1. there is no “dot” constructor to uniformly access by name fields of any record. Thus the names of these projections must be different, as .CApo and .CAvs. 2 The syntax is the one of the Matita pr... |

18 |
Dependently typed records in type theory
- Pollack
(Show Context)
Citation Context ... ∈ V and any 0 < λ ∈ k, then 0 ≤ λu. Here is a property that can be immediately verified: u ≤ v iff λu ≤ λv for any 0 < λ. We choose this running example instead of the most common example about rings=-=[9,16,3]-=- because we believe the latter to be a little deceiving. Indeed, a ring is usually defined as a triple (C,+,∗) such that (C,+) is a group, (C,∗) is a semigroup, and some distributive properties hold. ... |

16 | A Calculus of Substitutions for Incomplete-Proof Representation in Type Theory
- Muñoz
- 1997
(Show Context)
Citation Context ...ules have been employed in the type reconstruction algorithm of Coq and Matita. The type reconstruction algorithm is obtained from the syntax directed type inference algorithm by adding metavariables =-=[15]-=- in the calculus (standing for missing sub-terms) and by replacing conversion (≡) with unification (≈). We thus extend our judgement with an environment Θ that is a list of metavariable declarations (... |

15 | Implicit coercions in type systems
- Barthe
- 1995
(Show Context)
Citation Context ... ∈ V and any 0 < λ ∈ k, then 0 ≤ λu. Here is a property that can be immediately verified: u ≤ v iff λu ≤ λv for any 0 < λ. We choose this running example instead of the most common example about rings=-=[9,16,3]-=- because we believe the latter to be a little deceiving. Indeed, a ring is usually defined as a triple (C,+,∗) such that (C,+) is a group, (C,∗) is a semigroup, and some distributive properties hold. ... |

11 |
Coercive subtyping for the calculus of constructions
- Chen
(Show Context)
Citation Context ...ed. To solve the problem, one important step is the realization that rules that insert coercions and rules that do not are occurrences of the same rule when identities are considered as coercions. In =-=[6,7]-=-, Chen proposes an unified set of rules that also employes least upper bounds (lub) in the coercion graph to compute less coerced solutions. Chen’s rule for application adapted with metavariables in p... |

9 |
Type Conversion and Transitivity Elimination
- Subtyping
- 1998
(Show Context)
Citation Context ...ed. To solve the problem, one important step is the realization that rules that insert coercions and rules that do not are occurrences of the same rule when identities are considered as coercions. In =-=[6,7]-=-, Chen proposes an unified set of rules that also employes least upper bounds (lub) in the coercion graph to compute less coerced solutions. Chen’s rule for application adapted with metavariables in p... |

4 |
the constructive coq repository at nijmegen
- C-corn
- 2004
(Show Context)
Citation Context ...ct that formalising algebra in an interactive theorem prover should be smooth, and that the so called De Bruijn factor should be not so high for that particular subject. Many papers in the literature =-=[9]-=- give evidence that this is not the case. In this paper we analyse some of the problems that arise in formalising a hierarchy of algebraic structures and we propose a general mechanism that allows to ... |

2 |
Coercion synthesis in computer implementations of type-theoretic frameworks
- Bailey
- 1998
(Show Context)
Citation Context ... problem still arises, we need to introduce type reconstruction and coercion synthesis algorithms more formally. 4.1 Type reconstruction algorithm Coq, Lego and Matita use similar algorithms based on =-=[1,2,17]-=- to insert coercions in user provided ill-typed terms to make them well-typed. Coercions can be inserted in three different positions: around arguments expected to be sorts (e.g. when typing bound var... |

1 | Formalization of systems of algebras using dependent record types and subtyping: An example
- Betarte, Tasistro
- 1995
(Show Context)
Citation Context ...use telescopes. Beware of the differences between our records — which are implemented, at least as telescopes, in most systems like Coq — and dependently typed records “à la Betarte/Tasistro/Pollack” =-=[5,4,8]-=-: 1. there is no “dot” constructor to uniformly access by name fields of any record. Thus the names of these projections must be different, as .CApo and .CAvs. 2 The syntax is the one of the Matita pr... |

1 |
Unpublished proof formalized in lego by T. Kleymann and in coq by
- Hedberg
(Show Context)
Citation Context ...on is actually redundant, according to the initial intuition. The converse holds when the system is proof irrelevant, or, with minor modifications, when Leibniz equality is stated on a decidable type =-=[12]-=-. Coming back to our running example, u + w ≤ v + w can now be parsed as the well-typed term u (V.+) w ((k CApo Poset V.CAvs p).≤) v (V.+) w Things get a little more complex when with is used to chang... |