Nuprl Lemma : MultiTree-ext

[T:Type]
  MultiTree(T) ≡ lbl:Atom × if lbl =a "Node" then labels:{L:Atom List| 0 < ||L||}  × ({a:Atom| (a ∈ labels)}  ─→ MultiTr\000Cee(T))
                            if lbl =a "Leaf" then T
                            else Void
                            fi 


Proof




Definitions occuring in Statement :  MultiTree: MultiTree(T) l_member: (x ∈ l) length: ||as|| list: List ifthenelse: if then else fi  eq_atom: =a y ext-eq: A ≡ B less_than: a < b uall: [x:A]. B[x] set: {x:A| B[x]}  function: x:A ─→ B[x] product: x:A × B[x] natural_number: $n token: "$token" atom: Atom void: Void universe: Type
Lemmas :  MultiTreeco-ext eq_atom_wf bool_wf eqtt_to_assert assert_of_eq_atom subtype_base_sq atom_subtype_base value-type-has-value int-value-type less_than_wf length_wf equal-wf-base-T select_wf sq_stable__le l_member_wf sum-partial-has-value length_wf_nat MultiTreeco_size_wf list-subtype int_seg_wf has-value_wf-partial nat_wf set-value-type le_wf MultiTree_wf eqff_to_assert equal_wf bool_cases_sqequal bool_subtype_base assert-bnot neg_assert_of_eq_atom list_wf subtype_rel_dep_function MultiTreeco_wf set_wf add-nat false_wf sum-nat MultiTree_size_wf nat_properties lelt_wf and_wf squash_wf value-type_wf partial_wf
\mforall{}[T:Type]
    MultiTree(T)  \mequiv{}  lbl:Atom  \mtimes{}  if  lbl  =a  "Node"
                                                            then  labels:\{L:Atom  List|  0  <  ||L||\} 
                                                                      \mtimes{}  (\{a:Atom|  (a  \mmember{}  labels)\}    {}\mrightarrow{}  MultiTree(T))
                                                        if  lbl  =a  "Leaf"  then  T
                                                        else  Void
                                                        fi 



Date html generated: 2015_07_17-AM-07_45_48
Last ObjectModification: 2015_01_29-PM-04_39_14

Home Index