Nuprl Lemma : rec-class-val

[Info,T:Type]. ∀[G:es:EO+(Info) ⟶ E ⟶ bag(T)]. ∀[F:es:EO+(Info) ⟶ e':E ⟶ T ⟶ {e:E| (e' <loc e)}  ⟶ bag(T)].
[es:EO+(Info)]. ∀[e:E].
  RecClass(first e
             G[es;e]
           or next after e' with value v
               F[es;e';v;e])(e)
  if e ∈b prior(RecClass(first e
                             G[es;e]
                           or next after e' with value v
                               F[es;e';v;e]))
    then let e' prior(RecClass(first e
                                   G[es;e]
                                 or next after e' with value v
                                     F[es;e';v;e]))(e) in
             only(F[es;e';RecClass(first e
                                     G[es;e]
                                   or next after e' with value v
                                       F[es;e';v;e])(e');e])
    else only(G[es;e])
    fi 
  ∈ 
  supposing ↑e ∈b RecClass(first e
                             G[es;e]
                           or next after e' with value v
                               F[es;e';v;e])


Proof




Definitions occuring in Statement :  es-rec-class: es-rec-class es-prior-interface: prior(X) eclass-val: X(e) in-eclass: e ∈b X event-ordering+: EO+(Info) es-locl: (e <loc e') es-E: E assert: b ifthenelse: if then else fi  let: let uimplies: supposing a uall: [x:A]. B[x] so_apply: x[s1;s2;s3;s4] so_apply: x[s1;s2] set: {x:A| B[x]}  function: x:A ⟶ B[x] universe: Type equal: t ∈ T bag-only: only(bs) bag: bag(T)
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T all: x:A. B[x] es-rec-class: es-rec-class eclass-val: X(e) let: let in-eclass: e ∈b X so_lambda: λ2y.t[x; y] so_apply: x[s1;s2] subtype_rel: A ⊆B so_lambda: so_lambda(x,y,z,w.t[x; y; z; w]) so_apply: x[s1;s2;s3;s4] prop: implies:  Q uimplies: supposing a guard: {T} top: Top eclass: EClass(A[eo; e]) bool: 𝔹 unit: Unit it: btrue: tt uiff: uiff(P;Q) and: P ∧ Q nat: ifthenelse: if then else fi  bfalse: ff exists: x:A. B[x] or: P ∨ Q sq_type: SQType(T) bnot: ¬bb assert: b false: False squash: T true: True rev_uimplies: rev_uimplies(P;Q) es-locl: (e <loc e') iff: ⇐⇒ Q rev_implies:  Q cand: c∧ B decidable: Dec(P) satisfiable_int_formula: satisfiable_int_formula(fmla) not: ¬A nequal: a ≠ b ∈  ge: i ≥ 

Latex:
\mforall{}[Info,T:Type].  \mforall{}[G:es:EO+(Info)  {}\mrightarrow{}  E  {}\mrightarrow{}  bag(T)].  \mforall{}[F:es:EO+(Info)
                                                                                                            {}\mrightarrow{}  e':E
                                                                                                            {}\mrightarrow{}  T
                                                                                                            {}\mrightarrow{}  \{e:E|  (e'  <loc  e)\} 
                                                                                                            {}\mrightarrow{}  bag(T)].  \mforall{}[es:EO+(Info)].  \mforall{}[e:E].
    RecClass(first  e
                          G[es;e]
                      or  next  e  after  e'  with  value  v
                              F[es;e';v;e])(e)
    =  if  e  \mmember{}\msubb{}  prior(RecClass(first  e
                                                          G[es;e]
                                                      or  next  e  after  e'  with  value  v
                                                              F[es;e';v;e]))
        then  let  e'  =  prior(RecClass(first  e
                                                                      G[es;e]
                                                                  or  next  e  after  e'  with  value  v
                                                                          F[es;e';v;e]))(e)  in
                          only(F[es;e';RecClass(first  e
                                                                          G[es;e]
                                                                      or  next  e  after  e'  with  value  v
                                                                              F[es;e';v;e])(e');e])
        else  only(G[es;e])
        fi   
    supposing  \muparrow{}e  \mmember{}\msubb{}  RecClass(first  e
                                                          G[es;e]
                                                      or  next  e  after  e'  with  value  v
                                                              F[es;e';v;e])



Date html generated: 2016_05_17-AM-06_29_57
Last ObjectModification: 2016_01_17-PM-06_43_32

Theory : event-ordering


Home Index