Nuprl Lemma : Memory-loc-classrel1

∀[Info,B,A:Type]. ∀[f:Id ⟶ A ⟶ B ⟶ B]. ∀[init:Id ⟶ bag(B)]. ∀[X:EClass(A)]. ∀[es:EO+(Info)]. ∀[e:E]. ∀[v:B].
  uiff(v ∈ Memory-loc-class(f;init;X)(e);↓((↑first(e)) ∧ v ↓∈ init loc(e))
                                          ∨ ((¬↑first(e))
                                            ∧ ((∃a:A
                                                 (a ∈ X(pred(e))
                                                 ∧ (∃b:B
                                                     (b ∈ Memory-loc-class(f;init;X)(pred(e))
                                                     ∧ (v = (f loc(e) a b) ∈ B)))))
                                              ∨ ((∀a:A. (¬a ∈ X(pred(e)))) ∧ v ∈ Memory-loc-class(f;init;X)(pred(e))))))


Proof




Definitions occuring in Statement :  Memory-loc-class: Memory-loc-class(f;init;X),  classrel: v ∈ X(e),  eclass: EClass(A[eo; e]),  event-ordering+: EO+(Info),  es-first: first(e),  es-pred: pred(e),  es-loc: loc(e),  es-E: E,  Id: Id,  assert: ↑b,  uiff: uiff(P;Q),  uall: ∀[x:A]. B[x],  all: ∀x:A. B[x],  exists: ∃x:A. B[x],  not: ¬A,  squash: ↓T,  or: P ∨ Q,  and: P ∧ Q,  apply: f a,  function: x:A ⟶ B[x],  universe: Type,  equal: s = t ∈ T,  bag-member: x ↓∈ bs,  bag: bag(T)
Definitions unfolded in proof :  member: t ∈ T,  uall: ∀[x:A]. B[x],  prop: ℙ,  and: P ∧ Q,  subtype_rel: A ⊆r B,  so_lambda: λ2x.t[x],  uimplies: b supposing a,  so_apply: x[s],  exists: ∃x:A. B[x],  all: ∀x:A. B[x],  or: P ∨ Q,  so_lambda: λ2x y.t[x; y],  so_apply: x[s1;s2],  uiff: uiff(P;Q),  squash: ↓T,  classrel: v ∈ X(e),  bag-member: x ↓∈ bs,  Memory-loc-class: Memory-loc-class(f;init;X),  primed-class-opt: Prior(X)?b,  es-local-pred: last(P),  implies: P ⇒ Q,  bool: 𝔹,  unit: Unit,  it: ⋅,  btrue: tt,  ifthenelse: if b then t else f fi ,  bfalse: ff,  sq_type: SQType(T),  guard: {T},  bnot: ¬bb,  assert: ↑b,  false: False,  not: ¬A,  Id: Id,  es-E: E,  es-base-E: es-base-E(es),  iff: P ⇐⇒ Q,  rev_implies: P ⇐ Q,  cand: A c∧ B,  true: True,  eclass: EClass(A[eo; e]),  nat: ℕ

Latex:
\mforall{}[Info,B,A:Type].  \mforall{}[f:Id  {}\mrightarrow{}  A  {}\mrightarrow{}  B  {}\mrightarrow{}  B].  \mforall{}[init:Id  {}\mrightarrow{}  bag(B)].  \mforall{}[X:EClass(A)].  \mforall{}[es:EO+(Info)].
\mforall{}[e:E].  \mforall{}[v:B].
    uiff(v  \mmember{}  Memory-loc-class(f;init;X)(e);\mdownarrow{}((\muparrow{}first(e))  \mwedge{}  v  \mdownarrow{}\mmember{}  init  loc(e))
                                                                                    \mvee{}  ((\mneg{}\muparrow{}first(e))
                                                                                        \mwedge{}  ((\mexists{}a:A
                                                                                                  (a  \mmember{}  X(pred(e))
                                                                                                  \mwedge{}  (\mexists{}b:B
                                                                                                          (b  \mmember{}  Memory-loc-class(f;init;X)(pred(e))
                                                                                                          \mwedge{}  (v  =  (f  loc(e)  a  b))))))
                                                                                            \mvee{}  ((\mforall{}a:A.  (\mneg{}a  \mmember{}  X(pred(e))))
                                                                                                \mwedge{}  v  \mmember{}  Memory-loc-class(f;init;X)(pred(e))))))



Date html generated: 2016_05_17-AM-09_22_22
Last ObjectModification: 2016_01_17-PM-11_14_54

Theory : classrel!lemmas


Home Index