Step * of Lemma memory-classrel2-sv

[Info,A1,A2,S:Type].
  ∀init:Id ⟶ S. ∀tr1:Id ⟶ A1 ⟶ S ⟶ S. ∀X1:EClass(A1). ∀tr2:Id ⟶ A2 ⟶ S ⟶ S. ∀X2:EClass(A2). ∀es:EO+(Info). ∀e:E.
  ∀v:S.
    (disjoint-classrel(es;A2;X2;A1;X1)
     single-valued-classrel(es;X2;A2)
     single-valued-classrel(es;X1;A1)
     (v ∈ memory-class2(init;tr1;X1;tr2;X2)(e)
       ⇐⇒ prior-iterated-classrel(es;A1 A2;S;v;X1 (+) X2;tr1 tr2 loc(e);λloc.{init loc};e)))
BY
((UnivCD THENA Auto)
   THEN (RWO "Memory2-memory-class2<THENM Try ((Unfold `Memory2` THEN RWO "Memory-loc-classrel-single-val" 0)))
   THEN Auto
   THEN Reduce 0
   THEN Auto
   THEN Try (ProveSingleVal)) }


Latex:


Latex:
\mforall{}[Info,A1,A2,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{}es:EO+(Info).  \mforall{}e:E.  \mforall{}v:S.
        (disjoint-classrel(es;A2;X2;A1;X1)
        {}\mRightarrow{}  single-valued-classrel(es;X2;A2)
        {}\mRightarrow{}  single-valued-classrel(es;X1;A1)
        {}\mRightarrow{}  (v  \mmember{}  memory-class2(init;tr1;X1;tr2;X2)(e)
              \mLeftarrow{}{}\mRightarrow{}  prior-iterated-classrel(es;A1  +  A2;S;v;X1  (+)  X2;tr1  +  tr2  loc(e);\mlambda{}loc.\{init  loc\};e)))


By


Latex:
((UnivCD  THENA  Auto)
  THEN  (RWO  "Memory2-memory-class2<"  0
  THENM  Try  ((Unfold  `Memory2`  0  THEN  RWO  "Memory-loc-classrel-single-val"  0))
  )
  THEN  Auto
  THEN  Reduce  0
  THEN  Auto
  THEN  Try  (ProveSingleVal))




Home Index