Step
*
2
1
1
1
1
of Lemma
in-first-eclass
1. [Info] : Type
2. [A] : Type
3. Zs : EClass(A) List@i'
4. Z : EClass(A)@i'
5. ∀es:EO+(Info). ∀e:E.  (↑e ∈b first-eclass(Zs) 
⇐⇒ (∃X∈Zs. ↑e ∈b X))@i'
6. es : EO+(Info)@i'
7. ∀e:E. (↑e ∈b first-eclass(Zs) 
⇐⇒ (∃X∈Zs. ↑e ∈b X))
8. e : E@i
9. ↑e ∈b first-eclass(Zs) 
⇐⇒ (∃X∈Zs. ↑e ∈b X)
10. B : bag(A)@i
11. accumulate (with value b and list item X):
     if (#(b) =z 1) then b else X es e fi 
    over list:
      Zs
    with starting value:
     {})
= B
∈ bag(A)@i
12. C : bag(A)@i
13. (Z es e) = C ∈ bag(A)@i
⊢ ↑(#(if (#(B) =z 1) then B else C fi ) =z 1) 
⇐⇒ (↑(#(B) =z 1)) ∨ (∃X∈[Z]. ↑(#(X es e) =z 1))
BY
{ AutoSplit⋅ }
1
1. [Info] : Type
2. [A] : Type
3. Zs : EClass(A) List@i'
4. Z : EClass(A)@i'
5. ∀es:EO+(Info). ∀e:E.  (↑e ∈b first-eclass(Zs) 
⇐⇒ (∃X∈Zs. ↑e ∈b X))@i'
6. es : EO+(Info)@i'
7. ∀e:E. (↑e ∈b first-eclass(Zs) 
⇐⇒ (∃X∈Zs. ↑e ∈b X))
8. e : E@i
9. ↑e ∈b first-eclass(Zs) 
⇐⇒ (∃X∈Zs. ↑e ∈b X)
10. B : bag(A)@i
11. #(B) ≠ 1
12. accumulate (with value b and list item X):
     if (#(b) =z 1) then b else X es e fi 
    over list:
      Zs
    with starting value:
     {})
= B
∈ bag(A)@i
13. C : bag(A)@i
14. (Z es e) = C ∈ bag(A)@i
⊢ ↑(#(C) =z 1) 
⇐⇒ False ∨ (∃X∈[Z]. ↑(#(X es e) =z 1))
Latex:
Latex:
1.  [Info]  :  Type
2.  [A]  :  Type
3.  Zs  :  EClass(A)  List@i'
4.  Z  :  EClass(A)@i'
5.  \mforall{}es:EO+(Info).  \mforall{}e:E.    (\muparrow{}e  \mmember{}\msubb{}  first-eclass(Zs)  \mLeftarrow{}{}\mRightarrow{}  (\mexists{}X\mmember{}Zs.  \muparrow{}e  \mmember{}\msubb{}  X))@i'
6.  es  :  EO+(Info)@i'
7.  \mforall{}e:E.  (\muparrow{}e  \mmember{}\msubb{}  first-eclass(Zs)  \mLeftarrow{}{}\mRightarrow{}  (\mexists{}X\mmember{}Zs.  \muparrow{}e  \mmember{}\msubb{}  X))
8.  e  :  E@i
9.  \muparrow{}e  \mmember{}\msubb{}  first-eclass(Zs)  \mLeftarrow{}{}\mRightarrow{}  (\mexists{}X\mmember{}Zs.  \muparrow{}e  \mmember{}\msubb{}  X)
10.  B  :  bag(A)@i
11.  accumulate  (with  value  b  and  list  item  X):
          if  (\#(b)  =\msubz{}  1)  then  b  else  X  es  e  fi 
        over  list:
            Zs
        with  starting  value:
          \{\})
=  B@i
12.  C  :  bag(A)@i
13.  (Z  es  e)  =  C@i
\mvdash{}  \muparrow{}(\#(if  (\#(B)  =\msubz{}  1)  then  B  else  C  fi  )  =\msubz{}  1)  \mLeftarrow{}{}\mRightarrow{}  (\muparrow{}(\#(B)  =\msubz{}  1))  \mvee{}  (\mexists{}X\mmember{}[Z].  \muparrow{}(\#(X  es  e)  =\msubz{}  1))
By
Latex:
AutoSplit\mcdot{}
Home
Index