Step * 1 2 2 2 of Lemma loop-class-memory-exists


1. Info Type
2. Type
3. EClass(B ⟶ B)
4. init Id ⟶ bag(B)
5. es EO+(Info)
6. E@i
7. ∀e1:E. ((e1 < e)  uiff(0 < #(init loc(e1));↓∃v:B. v ∈ loop-class-memory(X;init)(e1)))
8. 0 < #(init loc(e))
9. ¬↑first(e)
10. B
11. v ∈ loop-class-memory(X;init)(pred(e))
12. ¬↑pred(e) ∈b X
13. ∀e':E. ((e' <loc pred(e))  (∀w:B. w ∈ eclass3(X;loop-class-memory(X;init))(e'))))
14. v ↓∈ init loc(pred(e))
⊢ ↓∃v:B. v ∈ loop-class-memory(X;init)(e)
BY
(D 0
   THEN InstConcl [⌜v⌝]⋅
   THEN Auto
   THEN RecUnfold `loop-class-memory` 0
   THEN MaUseClassRel 0
   THEN 0
   THEN OrRight
   THEN Auto
   THEN (InstLemma `es-pred_property` [⌜es⌝;⌜e⌝]⋅ THEN Auto)
   THEN (InstHyp [⌜e'⌝(-1)⋅ THENA Auto)
   THEN (-1)
   THEN Auto
   THEN Try (Complete ((BackThruSomeHyp THEN THEN Auto)))
   THEN (D THEN Auto)
   THEN MaUseClassRel (-1)
   THEN (-15)
   THEN BLemma `assert-member-eclass`
   THEN Auto
   THEN 0
   THEN InstConcl [⌜f⌝]⋅
   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@i
7.  \mforall{}e1:E.  ((e1  <  e)  {}\mRightarrow{}  uiff(0  <  \#(init  loc(e1));\mdownarrow{}\mexists{}v:B.  v  \mmember{}  loop-class-memory(X;init)(e1)))
8.  0  <  \#(init  loc(e))
9.  \mneg{}\muparrow{}first(e)
10.  v  :  B
11.  v  \mmember{}  loop-class-memory(X;init)(pred(e))
12.  \mneg{}\muparrow{}pred(e)  \mmember{}\msubb{}  X
13.  \mforall{}e':E.  ((e'  <loc  pred(e))  {}\mRightarrow{}  (\mforall{}w:B.  (\mneg{}w  \mmember{}  eclass3(X;loop-class-memory(X;init))(e'))))
14.  v  \mdownarrow{}\mmember{}  init  loc(pred(e))
\mvdash{}  \mdownarrow{}\mexists{}v:B.  v  \mmember{}  loop-class-memory(X;init)(e)


By


Latex:
(D  0
  THEN  InstConcl  [\mkleeneopen{}v\mkleeneclose{}]\mcdot{}
  THEN  Auto
  THEN  RecUnfold  `loop-class-memory`  0
  THEN  MaUseClassRel  0
  THEN  D  0
  THEN  OrRight
  THEN  Auto
  THEN  (InstLemma  `es-pred\_property`  [\mkleeneopen{}es\mkleeneclose{};\mkleeneopen{}e\mkleeneclose{}]\mcdot{}  THEN  Auto)
  THEN  (InstHyp  [\mkleeneopen{}e'\mkleeneclose{}]  (-1)\mcdot{}  THENA  Auto)
  THEN  D  (-1)
  THEN  Auto
  THEN  Try  (Complete  ((BackThruSomeHyp  THEN  D  0  THEN  Auto)))
  THEN  (D  0  THEN  Auto)
  THEN  MaUseClassRel  (-1)
  THEN  D  (-15)
  THEN  BLemma  `assert-member-eclass`
  THEN  Auto
  THEN  D  0
  THEN  InstConcl  [\mkleeneopen{}f\mkleeneclose{}]\mcdot{}
  THEN  Auto)




Home Index