Step
*
2
of Lemma
ses-legal-thread-has*-signature
1. s : SES@i'
2. SecurityAxioms@i'
3. es : EO+(Info)@i'
4. A : Id@i
5. thr : Thread@i
6. Legal(thr)@A@i
7. noncelike-signatures(s;es;thr)@i
8. sg : E(Sign)@i
9. a : E@i
10. Action(a)
11. a ∈ thr@i
12. a has* signature(sg)@i
13. ∀e':E. ((e' < a) 
⇒ Action(e') 
⇒ e' has* signature(sg) 
⇒ ((loc(e') = A ∈ Id) ∧ (¬↑e' ∈b Send)))
14. ∀e:E
      (Action(e)
      
⇒ e ∈ thr
      
⇒ e ≤loc a 
      
⇒ (∀m:ℕ. ∀e':E.
            ((e' ->>^m e)
            
⇒ (e' has signature(sg))
            
⇒ ((∃e':E. ((e' <loc e) ∧ Action(e') ∧ e' has* signature(sg) ∧ e' ∈ thr)) ∨ (e = sg ∈ E)))))
⊢ (∃e':E. ((e' <loc a) ∧ Action(e') ∧ e' has* signature(sg) ∧ e' ∈ thr)) ∨ (a = sg ∈ E)
BY
{ (Decide ⌈a = sg ∈ E⌉⋅
   THEN Auto
   THEN (RepeatFor 2 (D -4)
         THEN RepUR ``rel_star`` -4
         THEN ExRepD
         THEN RenameVar `m' (-5)
         THEN (InstHyp [⌈a⌉;⌈m⌉;⌈e'⌉] (-2)⋅ THENM D -1)
         THEN Auto)⋅) }
Latex:
Latex:
1.  s  :  SES@i'
2.  SecurityAxioms@i'
3.  es  :  EO+(Info)@i'
4.  A  :  Id@i
5.  thr  :  Thread@i
6.  Legal(thr)@A@i
7.  noncelike-signatures(s;es;thr)@i
8.  sg  :  E(Sign)@i
9.  a  :  E@i
10.  Action(a)
11.  a  \mmember{}  thr@i
12.  a  has*  signature(sg)@i
13.  \mforall{}e':E.  ((e'  <  a)  {}\mRightarrow{}  Action(e')  {}\mRightarrow{}  e'  has*  signature(sg)  {}\mRightarrow{}  ((loc(e')  =  A)  \mwedge{}  (\mneg{}\muparrow{}e'  \mmember{}\msubb{}  Send)))
14.  \mforall{}e:E
            (Action(e)
            {}\mRightarrow{}  e  \mmember{}  thr
            {}\mRightarrow{}  e  \mleq{}loc  a 
            {}\mRightarrow{}  (\mforall{}m:\mBbbN{}.  \mforall{}e':E.
                        ((e'  rel\_exp(E;  ->>  m)  e)
                        {}\mRightarrow{}  (e'  has  signature(sg))
                        {}\mRightarrow{}  ((\mexists{}e':E.  ((e'  <loc  e)  \mwedge{}  Action(e')  \mwedge{}  e'  has*  signature(sg)  \mwedge{}  e'  \mmember{}  thr))
                              \mvee{}  (e  =  sg)))))
\mvdash{}  (\mexists{}e':E.  ((e'  <loc  a)  \mwedge{}  Action(e')  \mwedge{}  e'  has*  signature(sg)  \mwedge{}  e'  \mmember{}  thr))  \mvee{}  (a  =  sg)
By
Latex:
(Decide  \mkleeneopen{}a  =  sg\mkleeneclose{}\mcdot{}
  THEN  Auto
  THEN  (RepeatFor  2  (D  -4)
              THEN  RepUR  ``rel\_star``  -4
              THEN  ExRepD
              THEN  RenameVar  `m'  (-5)
              THEN  (InstHyp  [\mkleeneopen{}a\mkleeneclose{};\mkleeneopen{}m\mkleeneclose{};\mkleeneopen{}e'\mkleeneclose{}]  (-2)\mcdot{}  THENM  D  -1)
              THEN  Auto)\mcdot{})
Home
Index