Nuprl Lemma : memory-classrel3-sv
∀[Info,A1,A2,A3,S:Type].
  ∀init:Id ⟶ S. ∀tr1:Id ⟶ A1 ⟶ S ⟶ S. ∀X1:EClass(A1). ∀tr2:Id ⟶ A2 ⟶ S ⟶ S. ∀X2:EClass(A2). ∀tr3:Id
                                                                                                        ⟶ A3
                                                                                                        ⟶ S
                                                                                                        ⟶ S.
  ∀X3:EClass(A3). ∀es:EO+(Info). ∀e:E. ∀v:S.
    (disjoint-classrel(es;A2;X2;A3;X3)
    
⇒ disjoint-classrel(es;A3;X3;A1;X1)
    
⇒ disjoint-classrel(es;A2;X2;A1;X1)
    
⇒ single-valued-classrel(es;X3;A3)
    
⇒ single-valued-classrel(es;X2;A2)
    
⇒ single-valued-classrel(es;X1;A1)
    
⇒ (v ∈ memory-class3(init;tr1;X1;tr2;X2;tr3;X3)(e)
       
⇐⇒ prior-iterated-classrel(es;A1 + A2 + A3;S;v;X1 (+) X2 (+) X3;tr1 + tr2 + tr3 loc(e);λloc.{init loc};e)))
Proof
Definitions occuring in Statement : 
disjoint-union-tr: tr1 + tr2
, 
disjoint-union-comb: X (+) Y
, 
memory-class3: memory-class3(init;tr1;X1;tr2;X2;tr3;X3)
, 
prior-iterated-classrel: prior-iterated-classrel(es;A;S;s;X;f;init;e)
, 
single-valued-classrel: single-valued-classrel(es;X;T)
, 
disjoint-classrel: disjoint-classrel(es;A;X;B;Y)
, 
classrel: v ∈ X(e)
, 
eclass: EClass(A[eo; e])
, 
event-ordering+: EO+(Info)
, 
es-loc: loc(e)
, 
es-E: E
, 
Id: Id
, 
uall: ∀[x:A]. B[x]
, 
all: ∀x:A. B[x]
, 
iff: P 
⇐⇒ Q
, 
implies: P 
⇒ Q
, 
apply: f a
, 
lambda: λx.A[x]
, 
function: x:A ⟶ B[x]
, 
union: left + right
, 
universe: Type
, 
single-bag: {x}
Definitions unfolded in proof : 
uall: ∀[x:A]. B[x]
, 
all: ∀x:A. B[x]
, 
implies: P 
⇒ Q
, 
member: t ∈ T
, 
prop: ℙ
, 
subtype_rel: A ⊆r B
, 
so_lambda: λ2x y.t[x; y]
, 
so_apply: x[s1;s2]
, 
true: True
, 
Memory3: Memory3, 
iff: P 
⇐⇒ Q
, 
and: P ∧ Q
, 
rev_implies: P 
⇐ Q
, 
uimplies: b supposing a
, 
uiff: uiff(P;Q)
, 
squash: ↓T
, 
guard: {T}
Latex:
\mforall{}[Info,A1,A2,A3,S:Type].
    \mforall{}init:Id  {}\mrightarrow{}  S.  \mforall{}tr1:Id  {}\mrightarrow{}  A1  {}\mrightarrow{}  S  {}\mrightarrow{}  S.  \mforall{}X1:EClass(A1).  \mforall{}tr2:Id  {}\mrightarrow{}  A2  {}\mrightarrow{}  S  {}\mrightarrow{}  S.  \mforall{}X2:EClass(A2).
    \mforall{}tr3:Id  {}\mrightarrow{}  A3  {}\mrightarrow{}  S  {}\mrightarrow{}  S.  \mforall{}X3:EClass(A3).  \mforall{}es:EO+(Info).  \mforall{}e:E.  \mforall{}v:S.
        (disjoint-classrel(es;A2;X2;A3;X3)
        {}\mRightarrow{}  disjoint-classrel(es;A3;X3;A1;X1)
        {}\mRightarrow{}  disjoint-classrel(es;A2;X2;A1;X1)
        {}\mRightarrow{}  single-valued-classrel(es;X3;A3)
        {}\mRightarrow{}  single-valued-classrel(es;X2;A2)
        {}\mRightarrow{}  single-valued-classrel(es;X1;A1)
        {}\mRightarrow{}  (v  \mmember{}  memory-class3(init;tr1;X1;tr2;X2;tr3;X3)(e)
              \mLeftarrow{}{}\mRightarrow{}  prior-iterated-classrel(es;A1  +  A2  +  A3;S;v;X1  (+)  X2  (+)  X3;tr1  +  tr2  +  tr3 
                                                                                                                                                loc(e);\mlambda{}loc.\{init  loc\};e)))
Date html generated:
2016_05_17-AM-10_06_30
Last ObjectModification:
2016_01_17-PM-11_05_19
Theory : classrel!lemmas
Home
Index