Nuprl Lemma : RankEx1_ind_wf

[T,A:Type]. ∀[R:A ─→ RankEx1(T) ─→ ℙ]. ∀[v:RankEx1(T)]. ∀[Leaf:leaf:T ─→ {x:A| R[x;RankEx1_Leaf(leaf)]} ].
[Prod:prod:(RankEx1(T) × RankEx1(T))
       ─→ let u,u1 prod 
          in {x:A| R[x;u]}  ∧ {x:A| R[x;u1]} 
       ─→ {x:A| R[x;RankEx1_Prod(prod)]} ]. ∀[ProdL:prodl:(T × RankEx1(T))
                                                   ─→ let u,u1 prodl 
                                                      in {x:A| R[x;u1]} 
                                                   ─→ {x:A| R[x;RankEx1_ProdL(prodl)]} ].
[ProdR:prodr:(RankEx1(T) × T) ─→ let u,u1 prodr in {x:A| R[x;u]}  ─→ {x:A| R[x;RankEx1_ProdR(prodr)]} ].
[List:list:(RankEx1(T) List) ─→ (∀u∈list.{x:A| R[x;u]} ) ─→ {x:A| R[x;RankEx1_List(list)]} ].
  (RankEx1_ind(v;
               RankEx1_Leaf(leaf) Leaf[leaf];
               RankEx1_Prod(prod) rec1.Prod[prod;rec1];
               RankEx1_ProdL(prodl) rec2.ProdL[prodl;rec2];
               RankEx1_ProdR(prodr) rec3.ProdR[prodr;rec3];
               RankEx1_List(list) rec4.List[list;rec4])  ∈ {x:A| R[x;v]} )


Proof




Definitions occuring in Statement :  RankEx1_ind: RankEx1_ind RankEx1_List: RankEx1_List(list) RankEx1_ProdR: RankEx1_ProdR(prodr) RankEx1_ProdL: RankEx1_ProdL(prodl) RankEx1_Prod: RankEx1_Prod(prod) RankEx1_Leaf: RankEx1_Leaf(leaf) RankEx1: RankEx1(T) l_all: (∀x∈L.P[x]) list: List uall: [x:A]. B[x] prop: so_apply: x[s1;s2] so_apply: x[s] and: P ∧ Q member: t ∈ T set: {x:A| B[x]}  function: x:A ─→ B[x] spread: spread def product: x:A × B[x] universe: Type
Lemmas :  top_wf has-value_wf_base lifting-strict-atom_eq base_wf RankEx1_wf RankEx1_Leaf_wf RankEx1_Prod_wf RankEx1_ProdL_wf RankEx1_ProdR_wf list_wf l_all_wf2 l_member_wf set_wf RankEx1_List_wf all_wf subtype_rel-equal
\mforall{}[T,A:Type].  \mforall{}[R:A  {}\mrightarrow{}  RankEx1(T)  {}\mrightarrow{}  \mBbbP{}].  \mforall{}[v:RankEx1(T)].  \mforall{}[Leaf:leaf:T  {}\mrightarrow{}  \{x:A| 
                                                                                                                                                      R
                                                                                                                                                      [x;RankEx1\_Leaf(leaf)]\}  ]\000C.
\mforall{}[Prod:prod:(RankEx1(T)  \mtimes{}  RankEx1(T))
              {}\mrightarrow{}  let  u,u1  =  prod 
                    in  \{x:A|  R[x;u]\}    \mwedge{}  \{x:A|  R[x;u1]\} 
              {}\mrightarrow{}  \{x:A|  R[x;RankEx1\_Prod(prod)]\}  ].  \mforall{}[ProdL:prodl:(T  \mtimes{}  RankEx1(T))
                                                                                                      {}\mrightarrow{}  let  u,u1  =  prodl 
                                                                                                            in  \{x:A|  R[x;u1]\} 
                                                                                                      {}\mrightarrow{}  \{x:A|  R[x;RankEx1\_ProdL(prodl)]\}  ].
\mforall{}[ProdR:prodr:(RankEx1(T)  \mtimes{}  T)
                {}\mrightarrow{}  let  u,u1  =  prodr 
                      in  \{x:A|  R[x;u]\} 
                {}\mrightarrow{}  \{x:A|  R[x;RankEx1\_ProdR(prodr)]\}  ].  \mforall{}[List:list:(RankEx1(T)  List)
                                                                                                          {}\mrightarrow{}  (\mforall{}u\mmember{}list.\{x:A|  R[x;u]\}  )
                                                                                                          {}\mrightarrow{}  \{x:A|  R[x;RankEx1\_List(list)]\}  ].
    (RankEx1\_ind(v;
                              RankEx1\_Leaf(leaf){}\mRightarrow{}  Leaf[leaf];
                              RankEx1\_Prod(prod){}\mRightarrow{}  rec1.Prod[prod;rec1];
                              RankEx1\_ProdL(prodl){}\mRightarrow{}  rec2.ProdL[prodl;rec2];
                              RankEx1\_ProdR(prodr){}\mRightarrow{}  rec3.ProdR[prodr;rec3];
                              RankEx1\_List(list){}\mRightarrow{}  rec4.List[list;rec4])    \mmember{}  \{x:A|  R[x;v]\}  )



Date html generated: 2015_07_17-AM-07_48_38
Last ObjectModification: 2015_01_29-PM-04_39_36

Home Index