Step
*
3
of Lemma
loop-class-memory-classrel
1. Info : Type
2. B : Type
3. X : EClass(B ─→ B)
4. init : Id ─→ bag(B)
5. es : EO+(Info)
6. e : E
7. v : B
8. ¬↑first(e)
9. ↑pred(e) ∈b X
10. b : B
11. b ∈ loop-class-memory(X;init)(pred(e))
12. f : B ─→ B
13. f ∈ X(pred(e))
14. v = (f b) ∈ B
⊢ ↓(∃e':E
     (((e' <loc e)
     ∧ (↓∃w:B. w ∈ eclass3(X;loop-class-memory(X;init))(e'))
     ∧ (∀e'':E. ((e'' <loc e) 
⇒ (e' <loc e'') 
⇒ (¬↓∃w:B. w ∈ eclass3(X;loop-class-memory(X;init))(e'')))))
     ∧ v ∈ eclass3(X;loop-class-memory(X;init))(e')))
   ∨ ((∀e':E. ((e' <loc e) 
⇒ (∀w:B. (¬w ∈ eclass3(X;loop-class-memory(X;init))(e'))))) ∧ v ↓∈ init loc(e))
BY
{ (D 0
   THEN (OrLeft THENA Auto)
   THEN InstConcl [⌈pred(e)⌉]⋅
   THEN Auto
   THEN Auto
   THEN Try (Complete ((MaUseClassRel 0 THEN D 0 THEN InstConcl [⌈f⌉;⌈b⌉]⋅ THEN Auto)))
   THEN Try (Complete ((D 0
                        THEN InstConcl [⌈v⌉]⋅
                        THEN Auto
                        THEN MaUseClassRel 0
                        THEN D 0
                        THEN InstConcl [⌈f⌉;⌈b⌉]⋅
                        THEN Auto)))
   THEN Try (Complete ((Assert ⌈False⌉⋅
                        THEN Auto
                        THEN InstLemma `es-pred_property` [⌈es⌉;⌈e⌉]⋅
                        THEN Auto
                        THEN InstHyp [⌈e''⌉] (-1)⋅
                        THEN Auto
                        THEN D (-1)
                        THEN Auto)))) }
Latex:
Latex:
1.  Info  :  Type
2.  B  :  Type
3.  X  :  EClass(B  {}\mrightarrow{}  B)
4.  init  :  Id  {}\mrightarrow{}  bag(B)
5.  es  :  EO+(Info)
6.  e  :  E
7.  v  :  B
8.  \mneg{}\muparrow{}first(e)
9.  \muparrow{}pred(e)  \mmember{}\msubb{}  X
10.  b  :  B
11.  b  \mmember{}  loop-class-memory(X;init)(pred(e))
12.  f  :  B  {}\mrightarrow{}  B
13.  f  \mmember{}  X(pred(e))
14.  v  =  (f  b)
\mvdash{}  \mdownarrow{}(\mexists{}e':E
          (((e'  <loc  e)
          \mwedge{}  (\mdownarrow{}\mexists{}w:B.  w  \mmember{}  eclass3(X;loop-class-memory(X;init))(e'))
          \mwedge{}  (\mforall{}e'':E
                    ((e''  <loc  e)
                    {}\mRightarrow{}  (e'  <loc  e'')
                    {}\mRightarrow{}  (\mneg{}\mdownarrow{}\mexists{}w:B.  w  \mmember{}  eclass3(X;loop-class-memory(X;init))(e'')))))
          \mwedge{}  v  \mmember{}  eclass3(X;loop-class-memory(X;init))(e')))
      \mvee{}  ((\mforall{}e':E.  ((e'  <loc  e)  {}\mRightarrow{}  (\mforall{}w:B.  (\mneg{}w  \mmember{}  eclass3(X;loop-class-memory(X;init))(e')))))
          \mwedge{}  v  \mdownarrow{}\mmember{}  init  loc(e))
By
Latex:
(D  0
  THEN  (OrLeft  THENA  Auto)
  THEN  InstConcl  [\mkleeneopen{}pred(e)\mkleeneclose{}]\mcdot{}
  THEN  Auto
  THEN  Auto
  THEN  Try  (Complete  ((MaUseClassRel  0  THEN  D  0  THEN  InstConcl  [\mkleeneopen{}f\mkleeneclose{};\mkleeneopen{}b\mkleeneclose{}]\mcdot{}  THEN  Auto)))
  THEN  Try  (Complete  ((D  0
                                            THEN  InstConcl  [\mkleeneopen{}v\mkleeneclose{}]\mcdot{}
                                            THEN  Auto
                                            THEN  MaUseClassRel  0
                                            THEN  D  0
                                            THEN  InstConcl  [\mkleeneopen{}f\mkleeneclose{};\mkleeneopen{}b\mkleeneclose{}]\mcdot{}
                                            THEN  Auto)))
  THEN  Try  (Complete  ((Assert  \mkleeneopen{}False\mkleeneclose{}\mcdot{}
                                            THEN  Auto
                                            THEN  InstLemma  `es-pred\_property`  [\mkleeneopen{}es\mkleeneclose{};\mkleeneopen{}e\mkleeneclose{}]\mcdot{}
                                            THEN  Auto
                                            THEN  InstHyp  [\mkleeneopen{}e''\mkleeneclose{}]  (-1)\mcdot{}
                                            THEN  Auto
                                            THEN  D  (-1)
                                            THEN  Auto))))
Home
Index