]> matita.cs.unibo.it Git - helm.git/blob - helm/software/matita/contribs/procedural/Coq/Wellfounded/Lexicographic_Product.mma
Preparing for 0.5.9 release.
[helm.git] / helm / software / matita / contribs / procedural / Coq / Wellfounded / Lexicographic_Product.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___,, * CNRS-Ecole Polytechnique-INRIA Futurs-Universite Paris Sud *)
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: Lexicographic_Product.v,v 1.12.2.1 2004/07/16 19:31:19 herbelin Exp $ i*)
34
35 (*#* Authors: Bruno Barras, Cristina Cornes *)
36
37 include "Logic/Eqdep.ma".
38
39 include "Relations/Relation_Operators.ma".
40
41 include "Wellfounded/Transitive_Closure.ma".
42
43 (*#*  From : Constructing Recursion Operators in Type Theory            
44      L. Paulson  JSC (1986) 2, 325-355 *)
45
46 (* UNEXPORTED
47 Section WfLexicographic_Product
48 *)
49
50 (* UNEXPORTED
51 cic:/Coq/Wellfounded/Lexicographic_Product/WfLexicographic_Product/A.var
52 *)
53
54 (* UNEXPORTED
55 cic:/Coq/Wellfounded/Lexicographic_Product/WfLexicographic_Product/B.var
56 *)
57
58 (* UNEXPORTED
59 cic:/Coq/Wellfounded/Lexicographic_Product/WfLexicographic_Product/leA.var
60 *)
61
62 (* UNEXPORTED
63 cic:/Coq/Wellfounded/Lexicographic_Product/WfLexicographic_Product/leB.var
64 *)
65
66 (* NOTATION
67 Notation LexProd := (lexprod A B leA leB).
68 *)
69
70 (* UNEXPORTED
71 Hint Resolve t_step Acc_clos_trans wf_clos_trans.
72 *)
73
74 inline procedural "cic:/Coq/Wellfounded/Lexicographic_Product/acc_A_B_lexprod.con" as lemma.
75
76 inline procedural "cic:/Coq/Wellfounded/Lexicographic_Product/wf_lexprod.con" as theorem.
77
78 (* UNEXPORTED
79 End WfLexicographic_Product
80 *)
81
82 (* UNEXPORTED
83 Section Wf_Symmetric_Product
84 *)
85
86 (* UNEXPORTED
87 cic:/Coq/Wellfounded/Lexicographic_Product/Wf_Symmetric_Product/A.var
88 *)
89
90 (* UNEXPORTED
91 cic:/Coq/Wellfounded/Lexicographic_Product/Wf_Symmetric_Product/B.var
92 *)
93
94 (* UNEXPORTED
95 cic:/Coq/Wellfounded/Lexicographic_Product/Wf_Symmetric_Product/leA.var
96 *)
97
98 (* UNEXPORTED
99 cic:/Coq/Wellfounded/Lexicographic_Product/Wf_Symmetric_Product/leB.var
100 *)
101
102 (* NOTATION
103 Notation Symprod := (symprod A B leA leB).
104 *)
105
106 (*i
107   Local sig_prod:=
108          [x:A*B]<{_:A&B}>Case x of [a:A][b:B](existS A [_:A]B a b) end.
109
110 Lemma incl_sym_lexprod: (included (A*B) Symprod  
111             (R_o_f (A*B) {_:A&B} sig_prod (lexprod A [_:A]B leA [_:A]leB))).
112 Proof.
113  Red.
114  Induction x.
115  (Induction y1;Intros).
116  Red.
117  Unfold sig_prod .
118  Inversion_clear H.
119  (Apply left_lex;Auto with sets).
120
121  (Apply right_lex;Auto with sets).
122 Qed.
123 i*)
124
125 inline procedural "cic:/Coq/Wellfounded/Lexicographic_Product/Acc_symprod.con" as lemma.
126
127 inline procedural "cic:/Coq/Wellfounded/Lexicographic_Product/wf_symprod.con" as lemma.
128
129 (* UNEXPORTED
130 End Wf_Symmetric_Product
131 *)
132
133 (* UNEXPORTED
134 Section Swap
135 *)
136
137 (* UNEXPORTED
138 cic:/Coq/Wellfounded/Lexicographic_Product/Swap/A.var
139 *)
140
141 (* UNEXPORTED
142 cic:/Coq/Wellfounded/Lexicographic_Product/Swap/R.var
143 *)
144
145 (* NOTATION
146 Notation SwapProd := (swapprod A R).
147 *)
148
149 inline procedural "cic:/Coq/Wellfounded/Lexicographic_Product/swap_Acc.con" as lemma.
150
151 inline procedural "cic:/Coq/Wellfounded/Lexicographic_Product/Acc_swapprod.con" as lemma.
152
153 inline procedural "cic:/Coq/Wellfounded/Lexicographic_Product/wf_swapprod.con" as lemma.
154
155 (* UNEXPORTED
156 End Swap
157 *)
158