Step
*
1
2
1
of Lemma
bind-return-left
1. Info : Type
2. T : Type
3. S : Type
4. x : T
5. f : T ⟶ EClass(S)@i'
6. ∀[X:EClass(T)]. ∀[Y:T ⟶ EClass(S)].  (X >x> Y[x] ∈ EClass(S))
7. es : EO+(Info)
8. e : E
9. e1 : E
10. e1 ≤loc e 
11. b : bag({e':E| e' ≤loc e  ∧ (¬↑first(e'))} )
12. e1 ≤loc e 
13. ↑first(e1)
14. ≤loc(e) = ([e1] + b) ∈ bag({e':E| e' ≤loc e } )
⊢ (f[x] es e) = ⋃e'∈≤loc(e).⋃z∈return-class(x) es e'.f[z] es.e' e ∈ bag(S)
BY
{ (AbstractGenConcl ⌜(λx.return-class(x)) = F ∈ (T ⟶ EClass(T))⌝⋅ THENA (Auto THEN SubsumeC ⌜EClass(T)⌝⋅ THEN Auto)) }
1
1. Info : Type
2. T : Type
3. S : Type
4. x : T
5. f : T ⟶ EClass(S)@i'
6. ∀[X:EClass(T)]. ∀[Y:T ⟶ EClass(S)].  (X >x> Y[x] ∈ EClass(S))
7. es : EO+(Info)
8. e : E
9. e1 : E
10. e1 ≤loc e 
11. b : bag({e':E| e' ≤loc e  ∧ (¬↑first(e'))} )
12. e1 ≤loc e 
13. ↑first(e1)
14. ≤loc(e) = ([e1] + b) ∈ bag({e':E| e' ≤loc e } )
15. F : T ⟶ EClass(T)@i'
16. (λx.return-class(x)) = F ∈ (T ⟶ EClass(T))@i'
⊢ (f[x] es e) = ⋃e'∈≤loc(e).⋃z∈F x es e'.f[z] es.e' e ∈ bag(S)
Latex:
Latex:
1.  Info  :  Type
2.  T  :  Type
3.  S  :  Type
4.  x  :  T
5.  f  :  T  {}\mrightarrow{}  EClass(S)@i'
6.  \mforall{}[X:EClass(T)].  \mforall{}[Y:T  {}\mrightarrow{}  EClass(S)].    (X  >x>  Y[x]  \mmember{}  EClass(S))
7.  es  :  EO+(Info)
8.  e  :  E
9.  e1  :  E
10.  e1  \mleq{}loc  e 
11.  b  :  bag(\{e':E|  e'  \mleq{}loc  e    \mwedge{}  (\mneg{}\muparrow{}first(e'))\}  )
12.  e1  \mleq{}loc  e 
13.  \muparrow{}first(e1)
14.  \mleq{}loc(e)  =  ([e1]  +  b)
\mvdash{}  (f[x]  es  e)  =  \mcup{}e'\mmember{}\mleq{}loc(e).\mcup{}z\mmember{}return-class(x)  es  e'.f[z]  es.e'  e
By
Latex:
(AbstractGenConcl  \mkleeneopen{}(\mlambda{}x.return-class(x))  =  F\mkleeneclose{}\mcdot{}  THENA  (Auto  THEN  SubsumeC  \mkleeneopen{}EClass(T)\mkleeneclose{}\mcdot{}  THEN  Auto))
Home
Index