Step * 1 1 1 1 of Lemma assert-es-first


1. es EO
2. ∀[e,e':es-base-E(es)].  (e e' ∈ 𝔹)
3. ∀[e:es-base-E(es)]. (loc(e) ∈ Id)
4. ∀[e,e':es-base-E(es)].  ((e < e') ∈ ℙ)
5. ∀[e:es-base-E(es)]. (pred(e) ∈ es-base-E(es))
6. es-base-E(es)@i
7. ∀e1:es-base-E(es)
     ((e1 < e)
      (↑(pred(e1) e1 ∨bb(es-dom(es) pred(e1)))))
      (∀e':E. ((loc(e') loc(e1) ∈ Id)  (e' < e1)  False)))
⊢ (↑(pred(e) e ∨bb(es-dom(es) pred(e)))))  (∀e':E. ((loc(e') loc(e) ∈ Id)  (e' < e)  False))
BY
(RecUnfold `es-pred` 0
   THEN Unfold `let` 0
   THEN Reduce 0
   THEN Fold `es-eq-E` 0
   THEN (InstLemma `es-pred-wf-base` [⌈es⌉;⌈pred1(e)⌉]⋅ THENA Auto)
   THEN AutoSplit) }

1
1. es EO
2. ∀[e,e':es-base-E(es)].  (e e' ∈ 𝔹)
3. ∀[e:es-base-E(es)]. (loc(e) ∈ Id)
4. ∀[e,e':es-base-E(es)].  ((e < e') ∈ ℙ)
5. ∀[e:es-base-E(es)]. (pred(e) ∈ es-base-E(es))
6. es-base-E(es)@i
7. ∀e1:es-base-E(es)
     ((e1 < e)
      (↑(pred(e1) e1 ∨bb(es-dom(es) pred(e1)))))
      (∀e':E. ((loc(e') loc(e1) ∈ Id)  (e' < e1)  False)))
8. pred(pred1(e)) ∈ es-base-E(es)
9. ↑(es-dom(es) pred1(e))
⊢ (↑(pred1(e) e ∨bb(es-dom(es) pred1(e)))))  (∀e':E. ((loc(e') loc(e) ∈ Id)  (e' < e)  False))

2
1. es EO
2. ∀[e,e':es-base-E(es)].  (e e' ∈ 𝔹)
3. ∀[e:es-base-E(es)]. (loc(e) ∈ Id)
4. ∀[e,e':es-base-E(es)].  ((e < e') ∈ ℙ)
5. ∀[e:es-base-E(es)]. (pred(e) ∈ es-base-E(es))
6. es-base-E(es)@i
7. ¬↑(es-dom(es) pred1(e))
8. ∀e1:es-base-E(es)
     ((e1 < e)
      (↑(pred(e1) e1 ∨bb(es-dom(es) pred(e1)))))
      (∀e':E. ((loc(e') loc(e1) ∈ Id)  (e' < e1)  False)))
9. pred(pred1(e)) ∈ es-base-E(es)
⊢ (↑(if pred1(e) then else pred(pred1(e)) fi  e
bb(es-dom(es) if pred1(e) then else pred(pred1(e)) fi ))))
 (∀e':E. ((loc(e') loc(e) ∈ Id)  (e' < e)  False))


Latex:



1.  es  :  EO
2.  \mforall{}[e,e':es-base-E(es)].    (e  =  e'  \mmember{}  \mBbbB{})
3.  \mforall{}[e:es-base-E(es)].  (loc(e)  \mmember{}  Id)
4.  \mforall{}[e,e':es-base-E(es)].    ((e  <  e')  \mmember{}  \mBbbP{})
5.  \mforall{}[e:es-base-E(es)].  (pred(e)  \mmember{}  es-base-E(es))
6.  e  :  es-base-E(es)@i
7.  \mforall{}e1:es-base-E(es)
          ((e1  <  e)
          {}\mRightarrow{}  (\muparrow{}(pred(e1)  =  e1  \mvee{}\msubb{}(\mneg{}\msubb{}(es-dom(es)  pred(e1)))))
          {}\mRightarrow{}  (\mforall{}e':E.  ((loc(e')  =  loc(e1))  {}\mRightarrow{}  (e'  <  e1)  {}\mRightarrow{}  False)))
\mvdash{}  (\muparrow{}(pred(e)  =  e  \mvee{}\msubb{}(\mneg{}\msubb{}(es-dom(es)  pred(e)))))  {}\mRightarrow{}  (\mforall{}e':E.  ((loc(e')  =  loc(e))  {}\mRightarrow{}  (e'  <  e)  {}\mRightarrow{}  False))


By

(RecUnfold  `es-pred`  0
  THEN  Unfold  `let`  0
  THEN  Reduce  0
  THEN  Fold  `es-eq-E`  0
  THEN  (InstLemma  `es-pred-wf-base`  [\mkleeneopen{}es\mkleeneclose{};\mkleeneopen{}pred1(e)\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  AutoSplit)




Home Index