Nuprl Lemma : l_treeco-ext

[L,T:Type].
  l_treeco(L;T) ≡ lbl:Atom × if lbl =a "leaf" then L
                             if lbl =a "node" then val:T × left_subtree:l_treeco(L;T) × l_treeco(L;T)
                             else Void
                             fi 


Proof




Definitions occuring in Statement :  l_treeco: l_treeco(L;T) ifthenelse: if then else fi  eq_atom: =a y ext-eq: A ≡ B uall: [x:A]. B[x] product: x:A × B[x] token: "$token" atom: Atom void: Void universe: Type
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T l_treeco: l_treeco(L;T) so_lambda: λ2x.t[x] so_apply: x[s] uimplies: supposing a continuous-monotone: ContinuousMonotone(T.F[T]) and: P ∧ Q type-monotone: Monotone(T.F[T]) subtype_rel: A ⊆B all: x:A. B[x] implies:  Q bool: 𝔹 unit: Unit it: btrue: tt uiff: uiff(P;Q) ifthenelse: if then else fi  bfalse: ff exists: x:A. B[x] prop: or: P ∨ Q sq_type: SQType(T) guard: {T} bnot: ¬bb assert: b false: False so_lambda: λ2y.t[x; y] so_apply: x[s1;s2] strong-type-continuous: Continuous+(T.F[T]) type-continuous: Continuous(T.F[T]) ext-eq: A ≡ B
Lemmas referenced :  corec-ext ifthenelse_wf eq_atom_wf subtype_rel_product bool_wf eqtt_to_assert assert_of_eq_atom eqff_to_assert equal_wf bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot neg_assert_of_eq_atom subtype_rel_wf strong-continuous-depproduct continuous-constant strong-continuous-product continuous-id subtype_rel_weakening nat_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut extract_by_obid sqequalHypSubstitution isectElimination thin sqequalRule lambdaEquality productEquality atomEquality instantiate hypothesisEquality tokenEquality hypothesis universeEquality cumulativity voidEquality independent_isectElimination independent_pairFormation because_Cache lambdaFormation unionElimination equalityElimination productElimination dependent_pairFormation equalityTransitivity equalitySymmetry promote_hyp dependent_functionElimination independent_functionElimination voidElimination axiomEquality isect_memberEquality isectEquality applyEquality functionExtensionality functionEquality independent_pairEquality

Latex:
\mforall{}[L,T:Type].
    l\_treeco(L;T)  \mequiv{}  lbl:Atom  \mtimes{}  if  lbl  =a  "leaf"  then  L
                                                          if  lbl  =a  "node"  then  val:T  \mtimes{}  left$_{subtree}$:l\_tr\000Ceeco(L;T)  \mtimes{}  l\_treeco(L;T)
                                                          else  Void
                                                          fi 



Date html generated: 2018_05_22-PM-09_38_17
Last ObjectModification: 2017_03_04-PM-07_25_27

Theory : labeled!trees


Home Index