]> matita.cs.unibo.it Git - helm.git/blob - helm/software/matita/contribs/procedural/Coq/Logic/Eqdep_dec.mma
...
[helm.git] / helm / software / matita / contribs / procedural / Coq / Logic / Eqdep_dec.mma
1 (**************************************************************************)
2 (*       ___                                                              *)
3 (*      ||M||                                                             *)
4 (*      ||A||       A project by Andrea Asperti                           *)
5 (*      ||T||                                                             *)
6 (*      ||I||       Developers:                                           *)
7 (*      ||T||         The HELM team.                                      *)
8 (*      ||A||         http://helm.cs.unibo.it                             *)
9 (*      \   /                                                             *)
10 (*       \ /        This file is distributed under the terms of the       *)
11 (*        v         GNU General Public License Version 2                  *)
12 (*                                                                        *)
13 (**************************************************************************)
14
15 (* This file was automatically generated: do not edit *********************)
16
17 include "Coq.ma".
18
19 (*#**********************************************************************)
20
21 (*  v      *   The Coq Proof Assistant  /  The Coq Development Team    *)
22
23 (* <O___,, *        INRIA-Rocquencourt  &  LRI-CNRS-Orsay              *)
24
25 (*   \VV/  *************************************************************)
26
27 (*    //   *      This file is distributed under the terms of the      *)
28
29 (*         *       GNU Lesser General Public License Version 2.1       *)
30
31 (*#**********************************************************************)
32
33 (*i $Id: Eqdep_dec.v,v 1.14 2003/11/29 17:28:33 herbelin Exp $ i*)
34
35 (*#* We prove that there is only one proof of [x=x], i.e [(refl_equal ? x)].
36    This holds if the equality upon the set of [x] is decidable.
37    A corollary of this theorem is the equality of the right projections
38    of two equal dependent pairs.
39
40    Author:   Thomas Kleymann |<tms@dcs.ed.ac.uk>| in Lego
41              adapted to Coq by B. Barras
42
43    Credit:   Proofs up to [K_dec] follows an outline by Michael Hedberg
44 *)
45
46 (*#* We need some dependent elimination schemes *)
47
48 (* UNEXPORTED
49 Set Implicit Arguments.
50 *)
51
52 (*#* Bijection between [eq] and [eqT] *)
53
54 inline procedural "cic:/Coq/Logic/Eqdep_dec/eq2eqT.con" as definition.
55
56 inline procedural "cic:/Coq/Logic/Eqdep_dec/eqT2eq.con" as definition.
57
58 inline procedural "cic:/Coq/Logic/Eqdep_dec/eq_eqT_bij.con" as lemma.
59
60 inline procedural "cic:/Coq/Logic/Eqdep_dec/eqT_eq_bij.con" as lemma.
61
62 (* UNEXPORTED
63 Section DecidableEqDep
64 *)
65
66 (* UNEXPORTED
67 cic:/Coq/Logic/Eqdep_dec/DecidableEqDep/A.var
68 *)
69
70 inline procedural "cic:/Coq/Logic/Eqdep_dec/DecidableEqDep/comp.con" "DecidableEqDep__" as definition.
71
72 inline procedural "cic:/Coq/Logic/Eqdep_dec/trans_sym_eqT.con" as remark.
73
74 (* UNEXPORTED
75 cic:/Coq/Logic/Eqdep_dec/DecidableEqDep/eq_dec.var
76 *)
77
78 (* UNEXPORTED
79 cic:/Coq/Logic/Eqdep_dec/DecidableEqDep/x.var
80 *)
81
82 inline procedural "cic:/Coq/Logic/Eqdep_dec/DecidableEqDep/nu.con" "DecidableEqDep__" as definition.
83
84 inline procedural "cic:/Coq/Logic/Eqdep_dec/DecidableEqDep/nu_constant.con" "DecidableEqDep__" as definition.
85
86 inline procedural "cic:/Coq/Logic/Eqdep_dec/DecidableEqDep/nu_inv.con" "DecidableEqDep__" as definition.
87
88 inline procedural "cic:/Coq/Logic/Eqdep_dec/nu_left_inv.con" as remark.
89
90 inline procedural "cic:/Coq/Logic/Eqdep_dec/eq_proofs_unicity.con" as theorem.
91
92 inline procedural "cic:/Coq/Logic/Eqdep_dec/K_dec.con" as theorem.
93
94 (*#* The corollary *)
95
96 inline procedural "cic:/Coq/Logic/Eqdep_dec/DecidableEqDep/proj.con" "DecidableEqDep__" as definition.
97
98 inline procedural "cic:/Coq/Logic/Eqdep_dec/inj_right_pair.con" as theorem.
99
100 (* UNEXPORTED
101 End DecidableEqDep
102 *)
103
104 (*#* We deduce the [K] axiom for (decidable) Set *)
105
106 inline procedural "cic:/Coq/Logic/Eqdep_dec/K_dec_set.con" as theorem.
107