Step * 1 2 1 1 of Lemma lexico_well_fnd


1. [T] Type
2. [R] T ⟶ T ⟶ ℙ
3. WellFnd{i}(T;a,b.R[a;b])
4. : ℤ
5. [%2] 0 < m
6. lexico(T; a,b.R[a;b]) ∈ (T List) ⟶ (T List) ⟶ ℙ
7. WellFnd{i}({L:T List| ||L|| (m 1) ∈ ℕ;as,bs.as lexico(T; a,b.R[a;b]) bs)
8. WellFnd{i}(T × {L:T List| ||L|| (m 1) ∈ ℕ;p1,p2.let a1,b1 p1 
                                                        in let a2,b2 p2 
                                                           in R[a1;a2]
                                                              ∨ ((a1 a2 ∈ T) ∧ (b1 lexico(T; a,b.R[a;b]) b2)))
⊢ WellFnd{i}({L:T List| ||L|| m ∈ ℕ;as,bs.as lexico(T; a,b.R[a;b]) bs)
BY
(InstLemma `inv_image_ind_a` [⌜T × {L:T List| ||L|| (m 1) ∈ ℕ} ⌝;⌜λ2p1 p2.let a1,b1 p1 
                                                                               in let a2,b2 p2 
                                                                                  in R[a1;a2]
                                                                                     ∨ ((a1 a2 ∈ T)
                                                                                       ∧ (b1 lexico(T; a,b.R[a;b]) b2))⌝
   ;⌜{L:T List| ||L|| m ∈ ℕ} ⌝;⌜λ2L.<hd(L), tl(L)>⌝]⋅
   THENA Auto
   }

1
1. [T] Type
2. [R] T ⟶ T ⟶ ℙ
3. WellFnd{i}(T;a,b.R[a;b])
4. : ℤ
5. [%2] 0 < m
6. lexico(T; a,b.R[a;b]) ∈ (T List) ⟶ (T List) ⟶ ℙ
7. WellFnd{i}({L:T List| ||L|| (m 1) ∈ ℕ;as,bs.as lexico(T; a,b.R[a;b]) bs)
8. WellFnd{i}(T × {L:T List| ||L|| (m 1) ∈ ℕ;p1,p2.let a1,b1 p1 
                                                        in let a2,b2 p2 
                                                           in R[a1;a2]
                                                              ∨ ((a1 a2 ∈ T) ∧ (b1 lexico(T; a,b.R[a;b]) b2)))
9. WellFnd{i}({L:T List| ||L|| m ∈ ℕ;x,y.let a1,b1 = <hd(x), tl(x)> 
                              in let a2,b2 = <hd(y), tl(y)> 
                                 in R[a1;a2] ∨ ((a1 a2 ∈ T) ∧ (b1 lexico(T; a,b.R[a;b]) b2)))
⊢ WellFnd{i}({L:T List| ||L|| m ∈ ℕ;as,bs.as lexico(T; a,b.R[a;b]) bs)


Latex:


Latex:

1.  [T]  :  Type
2.  [R]  :  T  {}\mrightarrow{}  T  {}\mrightarrow{}  \mBbbP{}
3.  WellFnd\{i\}(T;a,b.R[a;b])
4.  m  :  \mBbbZ{}
5.  [\%2]  :  0  <  m
6.  lexico(T;  a,b.R[a;b])  \mmember{}  (T  List)  {}\mrightarrow{}  (T  List)  {}\mrightarrow{}  \mBbbP{}
7.  WellFnd\{i\}(\{L:T  List|  ||L||  =  (m  -  1)\}  ;as,bs.as  lexico(T;  a,b.R[a;b])  bs)
8.  WellFnd\{i\}(T  \mtimes{}  \{L:T  List|  ||L||  =  (m  -  1)\}  ;p1,p2.let  a1,b1  =  p1 
                                                                                                        in  let  a2,b2  =  p2 
                                                                                                              in  R[a1;a2]
                                                                                                                    \mvee{}  ((a1  =  a2)
                                                                                                                        \mwedge{}  (b1  lexico(T;  a,b.R[a;b])  b2)))
\mvdash{}  WellFnd\{i\}(\{L:T  List|  ||L||  =  m\}  ;as,bs.as  lexico(T;  a,b.R[a;b])  bs)


By


Latex:
(InstLemma  `inv\_image\_ind\_a`  [\mkleeneopen{}T  \mtimes{}  \{L:T  List|  ||L||  =  (m  -  1)\}  \mkleeneclose{};\mkleeneopen{}\mlambda{}\msubtwo{}p1  p2.let  a1,b1  =  p1 
                                                                                                                                                  in  let  a2,b2  =  p2 
                                                                                                                                                        in  R[a1;a2]
                                                                                                                                                              \mvee{}  ((a1  =  a2)
                                                                                                                                                                  \mwedge{}  (b1 
                                                                                                                                                                        lexico(T;
                                                                                                                                                                                      a,b.R
                                                                                                                                                                                              [a;b]
                                                                                                                                                                                      ) 
                                                                                                                                                                        b2))\mkleeneclose{};
  \mkleeneopen{}\{L:T  List|  ||L||  =  m\}  \mkleeneclose{};\mkleeneopen{}\mlambda{}\msubtwo{}L.<hd(L),  tl(L)>\mkleeneclose{}]\mcdot{}
  THENA  Auto
  )




Home Index