Nuprl Lemma : MultiTree_ind_wf_simple

[T,A:Type]. ∀[v:MultiTree(T)]. ∀[Node:labels:{L:Atom List| 0 < ||L||} 
                                       ─→ children:({a:Atom| (a ∈ labels)}  ─→ MultiTree(T))
                                       ─→ (u:{a:Atom| (a ∈ labels)}  ─→ A)
                                       ─→ A]. ∀[Leaf:val:T ─→ A].
  (MultiTree_ind(v;
                 MTree_Node(labels,children) rec1.Node[labels;children;rec1];
                 MTree_Leaf(val) Leaf[val])  ∈ A)


Proof




Definitions occuring in Statement :  MultiTree_ind: MultiTree_ind MultiTree: MultiTree(T) l_member: (x ∈ l) length: ||as|| list: List less_than: a < b uall: [x:A]. B[x] so_apply: x[s1;s2;s3] so_apply: x[s] member: t ∈ T set: {x:A| B[x]}  function: x:A ─→ B[x] natural_number: $n atom: Atom universe: Type
Lemmas :  MultiTree_ind_wf true_wf MultiTree_wf subtype_rel_dep_function less_than_wf length_wf l_member_wf set_wf list_wf
\mforall{}[T,A:Type].  \mforall{}[v:MultiTree(T)].  \mforall{}[Node:labels:\{L:Atom  List|  0  <  ||L||\} 
                                                                              {}\mrightarrow{}  children:(\{a:Atom|  (a  \mmember{}  labels)\}    {}\mrightarrow{}  MultiTree(T))
                                                                              {}\mrightarrow{}  (u:\{a:Atom|  (a  \mmember{}  labels)\}    {}\mrightarrow{}  A)
                                                                              {}\mrightarrow{}  A].  \mforall{}[Leaf:val:T  {}\mrightarrow{}  A].
    (MultiTree\_ind(v;
                                  MTree\_Node(labels,children){}\mRightarrow{}  rec1.Node[labels;children;rec1];
                                  MTree\_Leaf(val){}\mRightarrow{}  Leaf[val])    \mmember{}  A)



Date html generated: 2015_07_17-AM-07_46_21
Last ObjectModification: 2015_01_27-AM-09_45_05

Home Index