Step
*
2
2
of Lemma
simple-loc-comb-2-concat-es-sv
1. Info : Type
2. es : EO+(Info)
3. A : Type
4. B : Type
5. F : Id ─→ A ─→ B ─→ bag(Top)
6. X : EClass(A)
7. Y : EClass(B)
8. ∀i:Id. ∀a:A. ∀b:B.  (#(F i a b) ≤ 1)
9. ∀e:E. (#(X es e) ≤ 1)
10. ∀e:E. (#(Y es e) ≤ 1)
11. e : E@i
12. #(X es e) ≤ 1
13. #(X es e) = 1 ∈ ℤ
14. single-valued-bag(X es e;A)
15. X es e ~ {only(X es e)}
16. #(Y es e) ≤ 1
17. #(Y es e) = 1 ∈ ℤ
⊢ #(bag-union(∪x@0∈Y es e.{F loc(e) only(X es e) x@0})) ≤ 1
BY
{ ((Assert single-valued-bag(Y es e;B) BY
          (BLemma `single-valued-bag-if-le1` THEN Auto))
   THEN (FLemma `bag-size-one` [-2] THENA Auto)
   THEN HypSubst' (-1) 0
   THEN (RWO "bag-combine-single-left" 0 THENA Auto)
   THEN (InstHyp [⌈loc(e)⌉;⌈only(X es e)⌉;⌈only(Y es e)⌉] (-12)⋅ THENA Auto)
   THEN (Assert ⌈(#(F loc(e) only(X es e) only(Y es e)) = 0 ∈ ℤ) ∨ (#(F loc(e) only(X es e) only(Y es e)) = 1 ∈ ℤ)⌉⋅
         THENA Auto'
         )
   THEN D (-1)) }
1
1. Info : Type
2. es : EO+(Info)
3. A : Type
4. B : Type
5. F : Id ─→ A ─→ B ─→ bag(Top)
6. X : EClass(A)
7. Y : EClass(B)
8. ∀i:Id. ∀a:A. ∀b:B.  (#(F i a b) ≤ 1)
9. ∀e:E. (#(X es e) ≤ 1)
10. ∀e:E. (#(Y es e) ≤ 1)
11. e : E@i
12. #(X es e) ≤ 1
13. #(X es e) = 1 ∈ ℤ
14. single-valued-bag(X es e;A)
15. X es e ~ {only(X es e)}
16. #(Y es e) ≤ 1
17. #(Y es e) = 1 ∈ ℤ
18. single-valued-bag(Y es e;B)
19. Y es e ~ {only(Y es e)}
20. #(F loc(e) only(X es e) only(Y es e)) ≤ 1
21. #(F loc(e) only(X es e) only(Y es e)) = 0 ∈ ℤ
⊢ #(bag-union({F loc(e) only(X es e) only(Y es e)})) ≤ 1
2
1. Info : Type
2. es : EO+(Info)
3. A : Type
4. B : Type
5. F : Id ─→ A ─→ B ─→ bag(Top)
6. X : EClass(A)
7. Y : EClass(B)
8. ∀i:Id. ∀a:A. ∀b:B.  (#(F i a b) ≤ 1)
9. ∀e:E. (#(X es e) ≤ 1)
10. ∀e:E. (#(Y es e) ≤ 1)
11. e : E@i
12. #(X es e) ≤ 1
13. #(X es e) = 1 ∈ ℤ
14. single-valued-bag(X es e;A)
15. X es e ~ {only(X es e)}
16. #(Y es e) ≤ 1
17. #(Y es e) = 1 ∈ ℤ
18. single-valued-bag(Y es e;B)
19. Y es e ~ {only(Y es e)}
20. #(F loc(e) only(X es e) only(Y es e)) ≤ 1
21. #(F loc(e) only(X es e) only(Y es e)) = 1 ∈ ℤ
⊢ #(bag-union({F loc(e) only(X es e) only(Y es e)})) ≤ 1
Latex:
Latex:
1.  Info  :  Type
2.  es  :  EO+(Info)
3.  A  :  Type
4.  B  :  Type
5.  F  :  Id  {}\mrightarrow{}  A  {}\mrightarrow{}  B  {}\mrightarrow{}  bag(Top)
6.  X  :  EClass(A)
7.  Y  :  EClass(B)
8.  \mforall{}i:Id.  \mforall{}a:A.  \mforall{}b:B.    (\#(F  i  a  b)  \mleq{}  1)
9.  \mforall{}e:E.  (\#(X  es  e)  \mleq{}  1)
10.  \mforall{}e:E.  (\#(Y  es  e)  \mleq{}  1)
11.  e  :  E@i
12.  \#(X  es  e)  \mleq{}  1
13.  \#(X  es  e)  =  1
14.  single-valued-bag(X  es  e;A)
15.  X  es  e  \msim{}  \{only(X  es  e)\}
16.  \#(Y  es  e)  \mleq{}  1
17.  \#(Y  es  e)  =  1
\mvdash{}  \#(bag-union(\mcup{}x@0\mmember{}Y  es  e.\{F  loc(e)  only(X  es  e)  x@0\}))  \mleq{}  1
By
Latex:
((Assert  single-valued-bag(Y  es  e;B)  BY
                (BLemma  `single-valued-bag-if-le1`  THEN  Auto))
  THEN  (FLemma  `bag-size-one`  [-2]  THENA  Auto)
  THEN  HypSubst'  (-1)  0
  THEN  (RWO  "bag-combine-single-left"  0  THENA  Auto)
  THEN  (InstHyp  [\mkleeneopen{}loc(e)\mkleeneclose{};\mkleeneopen{}only(X  es  e)\mkleeneclose{};\mkleeneopen{}only(Y  es  e)\mkleeneclose{}]  (-12)\mcdot{}  THENA  Auto)
  THEN  (Assert  \mkleeneopen{}(\#(F  loc(e)  only(X  es  e)  only(Y  es  e))  =  0)
                              \mvee{}  (\#(F  loc(e)  only(X  es  e)  only(Y  es  e))  =  1)\mkleeneclose{}\mcdot{}
              THENA  Auto'
              )
  THEN  D  (-1))
Home
Index