### Nuprl Lemma : iterated-classrel-trans

`∀[Info,A,S:Type]. ∀[init:Id ─→ bag(S)]. ∀[f:A ─→ S ─→ S]. ∀[R:S ─→ S ─→ ℙ].`
`  ∀X:EClass(A). ∀es:EO+(Info). ∀e1,e2:E. ∀v1,v2:S.`
`    (single-valued-classrel(es;X;A)`
`    `` single-valued-bag(init loc(e1);S)`
`    `` Trans(S;x,y.R[x;y])`
`    `` (∀a:A. ∀e:E.`
`          ((e1 <loc e)`
`          `` e ≤loc e2 `
`          `` a ∈ X(e)`
`          `` (∀s:S. (iterated-classrel(es;S;A;f;init;X;pred(e);s) `` R[s;f a s]))))`
`    `` (e1 <loc e2)`
`    `` iterated-classrel(es;S;A;f;init;X;e1;v1)`
`    `` iterated-classrel(es;S;A;f;init;X;e2;v2)`
`    `` (((∃e:E. ((e1 <loc e) ∧ e ≤loc e2  ∧ (∃a:A. a ∈ X(e)))) `` R[v1;v2])`
`       ∧ ((∀e:E. ((e1 <loc e) `` e ≤loc e2  `` (∀a:A. (¬a ∈ X(e))))) `` (v1 = v2 ∈ S))))`

Proof

Definitions occuring in Statement :  iterated-classrel: `iterated-classrel(es;S;A;f;init;X;e;v)` single-valued-classrel: `single-valued-classrel(es;X;T)` classrel: `v ∈ X(e)` eclass: `EClass(A[eo; e])` event-ordering+: `EO+(Info)` es-le: `e ≤loc e' ` es-locl: `(e <loc e')` es-pred: `pred(e)` es-loc: `loc(e)` es-E: `E` Id: `Id` trans: `Trans(T;x,y.E[x; y])` uall: `∀[x:A]. B[x]` prop: `ℙ` so_apply: `x[s1;s2]` all: `∀x:A. B[x]` exists: `∃x:A. B[x]` not: `¬A` implies: `P `` Q` and: `P ∧ Q` apply: `f a` function: `x:A ─→ B[x]` universe: `Type` equal: `s = t ∈ T` single-valued-bag: `single-valued-bag(b;T)` bag: `bag(T)`
Lemmas :  es-pred_wf event-ordering+_subtype es-pred-locl es-causl_weakening es-locl_transitivity1 es-le_weakening iterated-classrel_wf assert_elim es-first_wf2 es-locl-first btrue_neq_bfalse assert_wf classrel_wf es-le_wf es-locl_wf es-E_wf exists_wf all_wf not_wf es-le-pred es-le-self and_wf equal_wf member_wf decidable__exists-classrel-between3-sv iterated-classrel-single-val squash_wf true_wf event-ordering+_wf eclass_wf Id_wf bag_wf iff_weakening_equal es-pred_property es-loc_wf es-loc-pred es-locl_transitivity2 es-le_weakening_eq es-locl_irreflexivity es-causl_transitivity2 es-causle_weakening es-causle_weakening_eq es-causle_wf es-causl_irreflexivity
\mforall{}[Info,A,S:Type].  \mforall{}[init:Id  {}\mrightarrow{}  bag(S)].  \mforall{}[f:A  {}\mrightarrow{}  S  {}\mrightarrow{}  S].  \mforall{}[R:S  {}\mrightarrow{}  S  {}\mrightarrow{}  \mBbbP{}].
\mforall{}X:EClass(A).  \mforall{}es:EO+(Info).  \mforall{}e1,e2:E.  \mforall{}v1,v2:S.
(single-valued-classrel(es;X;A)
{}\mRightarrow{}  single-valued-bag(init  loc(e1);S)
{}\mRightarrow{}  Trans(S;x,y.R[x;y])
{}\mRightarrow{}  (\mforall{}a:A.  \mforall{}e:E.
((e1  <loc  e)
{}\mRightarrow{}  e  \mleq{}loc  e2
{}\mRightarrow{}  a  \mmember{}  X(e)
{}\mRightarrow{}  (\mforall{}s:S.  (iterated-classrel(es;S;A;f;init;X;pred(e);s)  {}\mRightarrow{}  R[s;f  a  s]))))
{}\mRightarrow{}  (e1  <loc  e2)
{}\mRightarrow{}  iterated-classrel(es;S;A;f;init;X;e1;v1)
{}\mRightarrow{}  iterated-classrel(es;S;A;f;init;X;e2;v2)
{}\mRightarrow{}  (((\mexists{}e:E.  ((e1  <loc  e)  \mwedge{}  e  \mleq{}loc  e2    \mwedge{}  (\mexists{}a:A.  a  \mmember{}  X(e))))  {}\mRightarrow{}  R[v1;v2])
\mwedge{}  ((\mforall{}e:E.  ((e1  <loc  e)  {}\mRightarrow{}  e  \mleq{}loc  e2    {}\mRightarrow{}  (\mforall{}a:A.  (\mneg{}a  \mmember{}  X(e)))))  {}\mRightarrow{}  (v1  =  v2))))

Date html generated: 2015_07_17-PM-00_28_13
Last ObjectModification: 2015_02_04-PM-05_34_27

Home Index