Step
*
2
2
1
2
4
1
2
of Lemma
es-interface-accum-programmable
1. Info : Type
2. A : Type
3. B : Type
4. X : EClass(A)
5. x : B
6. f : B ─→ A ─→ B
7. Y : EClass(B)@i'
8. ∀es:EO+(Info). ∀e:E.
     ((Y es e) = if e ∈b X then if e ∈b Prior(Y) then {f[Prior(Y)(e);X(e)]} else {f[x;X(e)]} fi  else {} fi  ∈ bag(B))
9. Singlevalued(Y)
10. ∀es:EO+(Info). ∀e:E.  (↑e ∈b X 
⇐⇒ ↑e ∈b Y)
11. es : EO+(Info)@i'
12. e : E@i
13. ∀e1:E
      ((e1 < e)
      
⇒ (↑e1 ∈b X)
      
⇒ (accumulate (with value b and list item e): f b X(e)over list:  ≤(X)(e1)with starting value: x) = Y(e1) ∈ B))
14. ↑e ∈b X@i
⊢ accumulate (with value b and list item e):
   f b X(e)
  over list:
    ≤(X)(e)
  with starting value:
   x)
= if e ∈b Prior(Y) then f[Prior(Y)(e);X(e)] else f[x;X(e)] fi 
∈ B
BY
{ (RWO "es-interface-predecessors-step" 0 THENA Auto)⋅ }
1
1. Info : Type
2. A : Type
3. B : Type
4. X : EClass(A)
5. x : B
6. f : B ─→ A ─→ B
7. Y : EClass(B)@i'
8. ∀es:EO+(Info). ∀e:E.
     ((Y es e) = if e ∈b X then if e ∈b Prior(Y) then {f[Prior(Y)(e);X(e)]} else {f[x;X(e)]} fi  else {} fi  ∈ bag(B))
9. Singlevalued(Y)
10. ∀es:EO+(Info). ∀e:E.  (↑e ∈b X 
⇐⇒ ↑e ∈b Y)
11. es : EO+(Info)@i'
12. e : E@i
13. ∀e1:E
      ((e1 < e)
      
⇒ (↑e1 ∈b X)
      
⇒ (accumulate (with value b and list item e): f b X(e)over list:  ≤(X)(e1)with starting value: x) = Y(e1) ∈ B))
14. ↑e ∈b X@i
⊢ accumulate (with value b and list item e):
   f b X(e)
  over list:
    if e ∈b prior(X) then ≤(X)(prior(X)(e)) @ [e] else [e] fi 
  with starting value:
   x)
= if e ∈b Prior(Y) then f[Prior(Y)(e);X(e)] else f[x;X(e)] fi 
∈ B
Latex:
Latex:
1.  Info  :  Type
2.  A  :  Type
3.  B  :  Type
4.  X  :  EClass(A)
5.  x  :  B
6.  f  :  B  {}\mrightarrow{}  A  {}\mrightarrow{}  B
7.  Y  :  EClass(B)@i'
8.  \mforall{}es:EO+(Info).  \mforall{}e:E.
          ((Y  es  e)
          =  if  e  \mmember{}\msubb{}  X  then  if  e  \mmember{}\msubb{}  Prior(Y)  then  \{f[Prior(Y)(e);X(e)]\}  else  \{f[x;X(e)]\}  fi    else  \{\}  fi  )
9.  Singlevalued(Y)
10.  \mforall{}es:EO+(Info).  \mforall{}e:E.    (\muparrow{}e  \mmember{}\msubb{}  X  \mLeftarrow{}{}\mRightarrow{}  \muparrow{}e  \mmember{}\msubb{}  Y)
11.  es  :  EO+(Info)@i'
12.  e  :  E@i
13.  \mforall{}e1:E
            ((e1  <  e)
            {}\mRightarrow{}  (\muparrow{}e1  \mmember{}\msubb{}  X)
            {}\mRightarrow{}  (accumulate  (with  value  b  and  list  item  e):
                      f  b  X(e)
                    over  list:
                        \mleq{}(X)(e1)
                    with  starting  value:
                      x)
                  =  Y(e1)))
14.  \muparrow{}e  \mmember{}\msubb{}  X@i
\mvdash{}  accumulate  (with  value  b  and  list  item  e):
      f  b  X(e)
    over  list:
        \mleq{}(X)(e)
    with  starting  value:
      x)
=  if  e  \mmember{}\msubb{}  Prior(Y)  then  f[Prior(Y)(e);X(e)]  else  f[x;X(e)]  fi 
By
Latex:
(RWO  "es-interface-predecessors-step"  0  THENA  Auto)\mcdot{}
Home
Index