Step
*
1
2
1
1
1
1
of Lemma
primed-class-opt-classrel
1. T : Type
2. Info : Type
3. X : EClass(T)
4. init : Id ⟶ bag(T)
5. es : EO+(Info)
6. e : E
7. v : T
8. P : E ⟶ 𝔹@i
9. (λe'.0 <z #(X es e')) = P ∈ (E ⟶ 𝔹)@i
10. Q : E ⟶ ℙ@i'
11. (λe'.(↓∃w:T. w ↓∈ X es e')) = Q ∈ (E ⟶ ℙ)@i'
12. x : E@i
13. (x <loc e)@i
14. ↑(P x)@i
15. ∀e'':E. ((x <loc e'') 
⇒ (e'' <loc e) 
⇒ (¬↑(P e'')))@i
16. (last(P) e)
= (inl x)
∈ ((∃e':{E| ((e' <loc e) ∧ (↑(P e')) ∧ (∀e'':E. ((e' <loc e'') 
⇒ (e'' <loc e) 
⇒ (¬↑(P e'')))))})
  ∨ (¬(∃e':{E| ((e' <loc e) ∧ (↑(P e')))})))@i
17. ¬↑first(e)
18. ((↑(P pred(e))) ∧ (x = pred(e) ∈ E)) ∨ ((¬↑(P pred(e))) ∧ (↑isl(last(P) pred(e))) ∧ (x = outl(last(P) pred(e)) ∈ E))
19. e' : E
20. (e' <loc e)
21. Q e'
22. ∀e'':E. ((e'' <loc e) 
⇒ (e' <loc e'') 
⇒ (¬(Q e'')))
23. v ↓∈ X es e'
⊢ x = e' ∈ E
BY
{ ((InstLemma `es-locl-trichotomy` [⌜es⌝;⌜x⌝;⌜e'⌝]⋅ THENA Auto) THEN D -1 THEN (D -2 THENA Auto) THEN D -1) }
1
1. T : Type
2. Info : Type
3. X : EClass(T)
4. init : Id ⟶ bag(T)
5. es : EO+(Info)
6. e : E
7. v : T
8. P : E ⟶ 𝔹@i
9. (λe'.0 <z #(X es e')) = P ∈ (E ⟶ 𝔹)@i
10. Q : E ⟶ ℙ@i'
11. (λe'.(↓∃w:T. w ↓∈ X es e')) = Q ∈ (E ⟶ ℙ)@i'
12. x : E@i
13. (x <loc e)@i
14. ↑(P x)@i
15. ∀e'':E. ((x <loc e'') 
⇒ (e'' <loc e) 
⇒ (¬↑(P e'')))@i
16. (last(P) e)
= (inl x)
∈ ((∃e':{E| ((e' <loc e) ∧ (↑(P e')) ∧ (∀e'':E. ((e' <loc e'') 
⇒ (e'' <loc e) 
⇒ (¬↑(P e'')))))})
  ∨ (¬(∃e':{E| ((e' <loc e) ∧ (↑(P e')))})))@i
17. ¬↑first(e)
18. ((↑(P pred(e))) ∧ (x = pred(e) ∈ E)) ∨ ((¬↑(P pred(e))) ∧ (↑isl(last(P) pred(e))) ∧ (x = outl(last(P) pred(e)) ∈ E))
19. e' : E
20. (e' <loc e)
21. Q e'
22. ∀e'':E. ((e'' <loc e) 
⇒ (e' <loc e'') 
⇒ (¬(Q e'')))
23. v ↓∈ X es e'
24. (loc(x) = loc(e') ∈ Id) 
⇐ (x <loc e') ∨ (x = e' ∈ E) ∨ (e' <loc x)
25. (x <loc e')
⊢ x = e' ∈ E
2
1. T : Type
2. Info : Type
3. X : EClass(T)
4. init : Id ⟶ bag(T)
5. es : EO+(Info)
6. e : E
7. v : T
8. P : E ⟶ 𝔹@i
9. (λe'.0 <z #(X es e')) = P ∈ (E ⟶ 𝔹)@i
10. Q : E ⟶ ℙ@i'
11. (λe'.(↓∃w:T. w ↓∈ X es e')) = Q ∈ (E ⟶ ℙ)@i'
12. x : E@i
13. (x <loc e)@i
14. ↑(P x)@i
15. ∀e'':E. ((x <loc e'') 
⇒ (e'' <loc e) 
⇒ (¬↑(P e'')))@i
16. (last(P) e)
= (inl x)
∈ ((∃e':{E| ((e' <loc e) ∧ (↑(P e')) ∧ (∀e'':E. ((e' <loc e'') 
⇒ (e'' <loc e) 
⇒ (¬↑(P e'')))))})
  ∨ (¬(∃e':{E| ((e' <loc e) ∧ (↑(P e')))})))@i
17. ¬↑first(e)
18. ((↑(P pred(e))) ∧ (x = pred(e) ∈ E)) ∨ ((¬↑(P pred(e))) ∧ (↑isl(last(P) pred(e))) ∧ (x = outl(last(P) pred(e)) ∈ E))
19. e' : E
20. (e' <loc e)
21. Q e'
22. ∀e'':E. ((e'' <loc e) 
⇒ (e' <loc e'') 
⇒ (¬(Q e'')))
23. v ↓∈ X es e'
24. (loc(x) = loc(e') ∈ Id) 
⇐ (x <loc e') ∨ (x = e' ∈ E) ∨ (e' <loc x)
25. (x = e' ∈ E) ∨ (e' <loc x)
⊢ x = e' ∈ E
Latex:
Latex:
1.  T  :  Type
2.  Info  :  Type
3.  X  :  EClass(T)
4.  init  :  Id  {}\mrightarrow{}  bag(T)
5.  es  :  EO+(Info)
6.  e  :  E
7.  v  :  T
8.  P  :  E  {}\mrightarrow{}  \mBbbB{}@i
9.  (\mlambda{}e'.0  <z  \#(X  es  e'))  =  P@i
10.  Q  :  E  {}\mrightarrow{}  \mBbbP{}@i'
11.  (\mlambda{}e'.(\mdownarrow{}\mexists{}w:T.  w  \mdownarrow{}\mmember{}  X  es  e'))  =  Q@i'
12.  x  :  E@i
13.  (x  <loc  e)@i
14.  \muparrow{}(P  x)@i
15.  \mforall{}e'':E.  ((x  <loc  e'')  {}\mRightarrow{}  (e''  <loc  e)  {}\mRightarrow{}  (\mneg{}\muparrow{}(P  e'')))@i
16.  (last(P)  e)  =  (inl  x)@i
17.  \mneg{}\muparrow{}first(e)
18.  ((\muparrow{}(P  pred(e)))  \mwedge{}  (x  =  pred(e)))
\mvee{}  ((\mneg{}\muparrow{}(P  pred(e)))  \mwedge{}  (\muparrow{}isl(last(P)  pred(e)))  \mwedge{}  (x  =  outl(last(P)  pred(e))))
19.  e'  :  E
20.  (e'  <loc  e)
21.  Q  e'
22.  \mforall{}e'':E.  ((e''  <loc  e)  {}\mRightarrow{}  (e'  <loc  e'')  {}\mRightarrow{}  (\mneg{}(Q  e'')))
23.  v  \mdownarrow{}\mmember{}  X  es  e'
\mvdash{}  x  =  e'
By
Latex:
((InstLemma  `es-locl-trichotomy`  [\mkleeneopen{}es\mkleeneclose{};\mkleeneopen{}x\mkleeneclose{};\mkleeneopen{}e'\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  D  -1
  THEN  (D  -2  THENA  Auto)
  THEN  D  -1)
Home
Index