Step * 1 1 of Lemma pRun-System-invariant


1. [M] Type ─→ Type
2. Continuous+(P.M[P])
3. [Q] : ℕ ─→ System(P.M[P]) ─→ ℙ
4. nat2msg : ℕ ─→ pMsg(P.M[P])@i
5. loc2msg Id ─→ pMsg(P.M[P])@i
6. S0 System(P.M[P])@i
7. Q[0;S0]@i
8. ∀t:ℕ. ∀S:System(P.M[P]).
     (Q[t;S]
      (∀env:pEnvType(P.M[P])
           let n,m,nm env (t 1) pRun(S0;env;nat2msg;loc2msg) in 
           Q[t 1;snd(do-chosen-command(nat2msg;loc2msg;t 1;S;n;m;nm))]))@i
9. env pEnvType(P.M[P])@i
10. {1...}
11. ∀t:ℕt. Q[t;snd((pRun(S0;env;nat2msg;loc2msg) t))]@i
12. let n,m,nm env ((t 1) 1) pRun(S0;env;nat2msg;loc2msg) in 
Q[(t 1) 1;snd(do-chosen-command(nat2msg;loc2msg;(t 1) 1;snd((pRun(S0;env;nat2msg;loc2msg) (t 1)));n;m;nm))]
⊢ Q[t;snd(let n,m,nm env pRun(S0;env;nat2msg;loc2msg) in 
  do-chosen-command(nat2msg;loc2msg;t;snd((pRun(S0;env;nat2msg;loc2msg) (t 1)));n;m;nm))]
BY
((Subst' (t 1) -1 THEN Try (Complete (Auto)))
   THEN (MoveToConcl (-1) THEN (GenConclAtAddr [1;1] THENA (Auto THEN DoSubsume⋅ THEN Auto))⋅)⋅
   }

1
1. [M] Type ─→ Type
2. Continuous+(P.M[P])
3. [Q] : ℕ ─→ System(P.M[P]) ─→ ℙ
4. nat2msg : ℕ ─→ pMsg(P.M[P])@i
5. loc2msg Id ─→ pMsg(P.M[P])@i
6. S0 System(P.M[P])@i
7. Q[0;S0]@i
8. ∀t:ℕ. ∀S:System(P.M[P]).
     (Q[t;S]
      (∀env:pEnvType(P.M[P])
           let n,m,nm env (t 1) pRun(S0;env;nat2msg;loc2msg) in 
           Q[t 1;snd(do-chosen-command(nat2msg;loc2msg;t 1;S;n;m;nm))]))@i
9. env pEnvType(P.M[P])@i
10. {1...}
11. ∀t:ℕt. Q[t;snd((pRun(S0;env;nat2msg;loc2msg) t))]@i
12. : ℕ × ℕ × Id@i
13. (env pRun(S0;env;nat2msg;loc2msg)) v ∈ (ℕ × ℕ × Id)@i
⊢ let n,m,nm in 
Q[t;snd(do-chosen-command(nat2msg;loc2msg;t;snd((pRun(S0;env;nat2msg;loc2msg) (t 1)));n;m;nm))]
 Q[t;snd(let n,m,nm in 
   do-chosen-command(nat2msg;loc2msg;t;snd((pRun(S0;env;nat2msg;loc2msg) (t 1)));n;m;nm))]


Latex:



Latex:

1.  [M]  :  Type  {}\mrightarrow{}  Type
2.  Continuous+(P.M[P])
3.  [Q]  :  \mBbbN{}  {}\mrightarrow{}  System(P.M[P])  {}\mrightarrow{}  \mBbbP{}
4.  nat2msg  :  \mBbbN{}  {}\mrightarrow{}  pMsg(P.M[P])@i
5.  loc2msg  :  Id  {}\mrightarrow{}  pMsg(P.M[P])@i
6.  S0  :  System(P.M[P])@i
7.  Q[0;S0]@i
8.  \mforall{}t:\mBbbN{}.  \mforall{}S:System(P.M[P]).
          (Q[t;S]
          {}\mRightarrow{}  (\mforall{}env:pEnvType(P.M[P])
                      let  n,m,nm  =  env  (t  +  1)  pRun(S0;env;nat2msg;loc2msg)  in 
                      Q[t  +  1;snd(do-chosen-command(nat2msg;loc2msg;t  +  1;S;n;m;nm))]))@i
9.  env  :  pEnvType(P.M[P])@i
10.  t  :  \{1...\}
11.  \mforall{}t:\mBbbN{}t.  Q[t;snd((pRun(S0;env;nat2msg;loc2msg)  t))]@i
12.  let  n,m,nm  =  env  ((t  -  1)  +  1)  pRun(S0;env;nat2msg;loc2msg)  in 
Q[(t  -  1)  +  1;snd(do-chosen-command(nat2msg;loc2msg;(t  -  1)  +  1;snd((pRun(S0;env;nat2msg;loc2msg) 
                                                                                                                                          (t  -  1)));n;m;nm))]
\mvdash{}  Q[t;snd(let  n,m,nm  =  env  t  pRun(S0;env;nat2msg;loc2msg)  in 
    do-chosen-command(nat2msg;loc2msg;t;snd((pRun(S0;env;nat2msg;loc2msg)  (t  -  1)));n;m;nm))]


By


Latex:
((Subst'  (t  -  1)  +  1  \msim{}  t  -1  THEN  Try  (Complete  (Auto)))
  THEN  (MoveToConcl  (-1)  THEN  (GenConclAtAddr  [1;1]  THENA  (Auto  THEN  DoSubsume\mcdot{}  THEN  Auto))\mcdot{})\mcdot{}
  )




Home Index