Step
*
2
1
1
of Lemma
Memory-class-exists
1. Info : Type
2. B : Type
3. A : Type
4. f : A ⟶ B ⟶ B
5. init : Id ⟶ bag(B)
6. X : EClass(A)
7. es : EO+(Info)
8. e : E@i
9. ∀e':E. ((e' < e) 
⇒ 0 < #(init loc(e')) 
⇒ (↓∃v:B. v ∈ Memory-class(f;init;X)(e')))
10. 0 < #(init loc(e))@i
11. ¬↑first(e)
12. v : B
13. v ∈ Memory-class(f;init;X)(pred(e))
14. #(X es pred(e)) = 0 ∈ ℤ
15. prior-iterated-classrel(es;A;B;v;X;f;init;pred(e))
16. ¬↑first(e)
⊢ iterated-classrel(es;B;A;f;init;X;pred(e);v)
BY
{ (RecUnfold `iterated-classrel` 0
   THEN InstConcl [⌜v⌝]⋅
   THEN MaAuto
   THEN Try ((Unfold `prior-iterated-classrel` (-2) THEN SplitOrHyps THEN Auto))
   THEN (OrRight THEN Auto)
   THEN Unfold `classrel` 0
   THEN BLemma `empty-bag-iff-no-member`
   THEN Auto
   THEN BLemma `empty-bag-iff-size`
   THEN Auto) }
Latex:
Latex:
1.  Info  :  Type
2.  B  :  Type
3.  A  :  Type
4.  f  :  A  {}\mrightarrow{}  B  {}\mrightarrow{}  B
5.  init  :  Id  {}\mrightarrow{}  bag(B)
6.  X  :  EClass(A)
7.  es  :  EO+(Info)
8.  e  :  E@i
9.  \mforall{}e':E.  ((e'  <  e)  {}\mRightarrow{}  0  <  \#(init  loc(e'))  {}\mRightarrow{}  (\mdownarrow{}\mexists{}v:B.  v  \mmember{}  Memory-class(f;init;X)(e')))
10.  0  <  \#(init  loc(e))@i
11.  \mneg{}\muparrow{}first(e)
12.  v  :  B
13.  v  \mmember{}  Memory-class(f;init;X)(pred(e))
14.  \#(X  es  pred(e))  =  0
15.  prior-iterated-classrel(es;A;B;v;X;f;init;pred(e))
16.  \mneg{}\muparrow{}first(e)
\mvdash{}  iterated-classrel(es;B;A;f;init;X;pred(e);v)
By
Latex:
(RecUnfold  `iterated-classrel`  0
  THEN  InstConcl  [\mkleeneopen{}v\mkleeneclose{}]\mcdot{}
  THEN  MaAuto
  THEN  Try  ((Unfold  `prior-iterated-classrel`  (-2)  THEN  SplitOrHyps  THEN  Auto))
  THEN  (OrRight  THEN  Auto)
  THEN  Unfold  `classrel`  0
  THEN  BLemma  `empty-bag-iff-no-member`
  THEN  Auto
  THEN  BLemma  `empty-bag-iff-size`
  THEN  Auto)
Home
Index