Step
*
1
1
2
of Lemma
pRun_wf
1. M : Type ─→ Type
2. Continuous+(P.M[P])
3. nat2msg : ℕ ─→ pMsg(P.M[P])
4. loc2msg : Id ─→ pMsg(P.M[P])
5. S0 : System(P.M[P])
6. env : pEnvType(P.M[P])
7. t : {1...}
8. ∀t:ℕt. (pRun(S0;env;nat2msg;loc2msg) t ∈ ℤ × Id × Id × pMsg(P.M[P])? × System(P.M[P]))
9. v : ℕ × ℕ × Id@i
10. (env t pRun(S0;env;nat2msg;loc2msg)) = v ∈ (ℕ × ℕ × Id)@i
⊢ let n,m,nm = v in 
  do-chosen-command(nat2msg;loc2msg;t;snd((pRun(S0;env;nat2msg;loc2msg) (t - 1)));n;m;nm) ∈ ℤ × Id × Id × pMsg(P.M[P])?
  × System(P.M[P])
BY
{ (RepeatFor 2 (D (-2)) THEN Reduce 0 THEN Auto) }
1
1. M : Type ─→ Type
2. Continuous+(P.M[P])
3. nat2msg : ℕ ─→ pMsg(P.M[P])
4. loc2msg : Id ─→ pMsg(P.M[P])
5. S0 : System(P.M[P])
6. env : pEnvType(P.M[P])
7. t : {1...}
8. ∀t:ℕt. (pRun(S0;env;nat2msg;loc2msg) t ∈ ℤ × Id × Id × pMsg(P.M[P])? × System(P.M[P]))
9. v1 : ℕ@i
10. v3 : ℕ@i
11. v4 : Id@i
12. (env t pRun(S0;env;nat2msg;loc2msg)) = <v1, v3, v4> ∈ (ℕ × ℕ × Id)@i
⊢ snd((pRun(S0;env;nat2msg;loc2msg) (t - 1))) ∈ System(P.M[P])
Latex:
Latex:
1.  M  :  Type  {}\mrightarrow{}  Type
2.  Continuous+(P.M[P])
3.  nat2msg  :  \mBbbN{}  {}\mrightarrow{}  pMsg(P.M[P])
4.  loc2msg  :  Id  {}\mrightarrow{}  pMsg(P.M[P])
5.  S0  :  System(P.M[P])
6.  env  :  pEnvType(P.M[P])
7.  t  :  \{1...\}
8.  \mforall{}t:\mBbbN{}t.  (pRun(S0;env;nat2msg;loc2msg)  t  \mmember{}  \mBbbZ{}  \mtimes{}  Id  \mtimes{}  Id  \mtimes{}  pMsg(P.M[P])?  \mtimes{}  System(P.M[P]))
9.  v  :  \mBbbN{}  \mtimes{}  \mBbbN{}  \mtimes{}  Id@i
10.  (env  t  pRun(S0;env;nat2msg;loc2msg))  =  v@i
\mvdash{}  let  n,m,nm  =  v  in 
    do-chosen-command(nat2msg;loc2msg;t;snd((pRun(S0;env;nat2msg;loc2msg)  (t  -  1)));n;m;nm)  \mmember{}  \mBbbZ{}  \mtimes{}  Id
    \mtimes{}  Id
    \mtimes{}  pMsg(P.M[P])?  \mtimes{}  System(P.M[P])
By
Latex:
(RepeatFor  2  (D  (-2))  THEN  Reduce  0  THEN  Auto)
Home
Index