Step
*
2
1
of Lemma
es-interface-accum-programmable
.....assertion..... 
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. λB,r. if (#(B 0) =z 1)
        then if (#(r) =z 1) then {f[only(r);only(B 0)]} else {f[x;only(B 0)]} fi 
        else {}
        fi |λi.X,(self)'|
= Y
∈ EClass(B)@i'
9. ∀es:EO+(Info). ∀e:E.
     ((Y es e)
     = if (#(X es e) =z 1)
       then if (#(Prior(Y) es e) =z 1) then {f[only(Prior(Y) es e);only(X es e)]} else {f[x;only(X es e)]} fi 
       else {}
       fi 
     ∈ bag(B))
⊢ Singlevalued(Y)
BY
{ (Folds ``in-eclass eclass-val`` (-1) THEN D 0 THEN Auto THEN RWO  "-3" 0 THEN Auto THEN RepeatFor 2 (AutoSplit)) }
Latex:
Latex:
.....assertion..... 
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.  \mlambda{}B,r.  if  (\#(B  0)  =\msubz{}  1)
                then  if  (\#(r)  =\msubz{}  1)  then  \{f[only(r);only(B  0)]\}  else  \{f[x;only(B  0)]\}  fi 
                else  \{\}
                fi  |\mlambda{}i.X,(self)'|
=  Y@i'
9.  \mforall{}es:EO+(Info).  \mforall{}e:E.
          ((Y  es  e)
          =  if  (\#(X  es  e)  =\msubz{}  1)
              then  if  (\#(Prior(Y)  es  e)  =\msubz{}  1)
                        then  \{f[only(Prior(Y)  es  e);only(X  es  e)]\}
                        else  \{f[x;only(X  es  e)]\}
                        fi 
              else  \{\}
              fi  )
\mvdash{}  Singlevalued(Y)
By
Latex:
(Folds  ``in-eclass  eclass-val``  (-1)
  THEN  D  0
  THEN  Auto
  THEN  RWO    "-3"  0
  THEN  Auto
  THEN  RepeatFor  2  (AutoSplit))
Home
Index