Step * 1 1 1 1 of Lemma inv_image_ind_tp


1. [T] Type
2. [r] T ⟶ T ⟶ ℙ
3. [S] Type
4. S ⟶ T
5. WellFnd{i}(T;x,y.r[x;y])
6. [P] S ⟶ ℙ
7. ∀j:S. ((∀k:S. (r[f k;f j]  P[k]))  P[j])
8. S
⊢ P[n]
BY
(%S%
\p.let get_distinct_var `x' p
   in let get_var_arg `n` p
   in let get_term_arg `S` p
   in let get_term_arg `T` p
   in let get_term_arg `f` p
   in
   Assert
     (mk_all_term T
       (mk_all_term S
         (mk_implies_term
            (mk_equal_term (mk_apply_term (mvt n)) (mvt x))
            (concl p)))) p) }

1
.....assertion..... 
1. [T] Type
2. [r] T ⟶ T ⟶ ℙ
3. [S] Type
4. S ⟶ T
5. WellFnd{i}(T;x,y.r[x;y])
6. [P] S ⟶ ℙ
7. ∀j:S. ((∀k:S. (r[f k;f j]  P[k]))  P[j])
8. S
⊢ ∀x:T. ∀n:S.  (((f n) x ∈ T)  P[n])

2
1. [T] Type
2. [r] T ⟶ T ⟶ ℙ
3. [S] Type
4. S ⟶ T
5. WellFnd{i}(T;x,y.r[x;y])
6. [P] S ⟶ ℙ
7. ∀j:S. ((∀k:S. (r[f k;f j]  P[k]))  P[j])
8. S
9. ∀x:T. ∀n:S.  (((f n) x ∈ T)  P[n])
⊢ P[n]


Latex:


Latex:

1.  [T]  :  Type
2.  [r]  :  T  {}\mrightarrow{}  T  {}\mrightarrow{}  \mBbbP{}
3.  [S]  :  Type
4.  f  :  S  {}\mrightarrow{}  T
5.  WellFnd\{i\}(T;x,y.r[x;y])
6.  [P]  :  S  {}\mrightarrow{}  \mBbbP{}
7.  \mforall{}j:S.  ((\mforall{}k:S.  (r[f  k;f  j]  {}\mRightarrow{}  P[k]))  {}\mRightarrow{}  P[j])
8.  n  :  S
\mvdash{}  P[n]


By


Latex:
(\%S\%
\mbackslash{}p.let  x  =  get\_distinct\_var  `x'  p
      in  let  n  =  get\_var\_arg  `n`  p
      in  let  S  =  get\_term\_arg  `S`  p
      in  let  T  =  get\_term\_arg  `T`  p
      in  let  f  =  get\_term\_arg  `f`  p
      in
      Assert
          (mk\_all\_term  x  T
              (mk\_all\_term  n  S
                  (mk\_implies\_term
                        (mk\_equal\_term  T  (mk\_apply\_term  f  (mvt  n))  (mvt  x))
                        (concl  p))))  p)




Home Index