Step * 1 1 of Lemma bfs-reduce-strong-subtype

.....assertion..... 
1. [K] RngSig
2. [S] Type
3. [T] Type
4. strong-subtype(S;T)
5. [as] basic-formal-sum(K;S)
6. [bs] basic-formal-sum(K;S)
7. bag(T)
8. as (bs s) ∈ basic-formal-sum(K;T)
9. strong-subtype(basic-formal-sum(K;S);basic-formal-sum(K;T))
10. ∀b:basic-formal-sum(K;T). ∀a:basic-formal-sum(K;S).
      ((b a ∈ basic-formal-sum(K;T))  (b a ∈ basic-formal-sum(K;S)))
⊢ s ∈ bag(S)
BY
(All (Unfold `basic-formal-sum`)
   THEN (Assert ⌜∀x:|K| × T. (x ↓∈  x ↓∈ as)⌝⋅
         THENA (Auto THEN Eliminate ⌜as⌝⋅ THEN Auto THEN RWO "bag-member-append" THEN Auto)
         )
   THEN (Assert s ∈ bag(|K| × S) BY
               (BLemma `bag-in-subtype2` THEN Auto))) }

1
1. [K] RngSig
2. [S] Type
3. [T] Type
4. strong-subtype(S;T)
5. [as] bag(|K| × S)
6. [bs] bag(|K| × S)
7. bag(T)
8. as (bs s) ∈ bag(|K| × T)
9. strong-subtype(bag(|K| × S);bag(|K| × T))
10. ∀b:bag(|K| × T). ∀a:bag(|K| × S).  ((b a ∈ bag(|K| × T))  (b a ∈ bag(|K| × S)))
11. ∀x:|K| × T. (x ↓∈  x ↓∈ as)
12. s ∈ bag(|K| × S)
⊢ s ∈ bag(S)


Latex:


Latex:
.....assertion..... 
1.  [K]  :  RngSig
2.  [S]  :  Type
3.  [T]  :  Type
4.  strong-subtype(S;T)
5.  [as]  :  basic-formal-sum(K;S)
6.  [bs]  :  basic-formal-sum(K;S)
7.  s  :  bag(T)
8.  as  =  (bs  +  0  *  s)
9.  strong-subtype(basic-formal-sum(K;S);basic-formal-sum(K;T))
10.  \mforall{}b:basic-formal-sum(K;T).  \mforall{}a:basic-formal-sum(K;S).    ((b  =  a)  {}\mRightarrow{}  (b  =  a))
\mvdash{}  s  \mmember{}  bag(S)


By


Latex:
(All  (Unfold  `basic-formal-sum`)
  THEN  (Assert  \mkleeneopen{}\mforall{}x:|K|  \mtimes{}  T.  (x  \mdownarrow{}\mmember{}  0  *  s  {}\mRightarrow{}  x  \mdownarrow{}\mmember{}  as)\mkleeneclose{}\mcdot{}
              THENA  (Auto  THEN  Eliminate  \mkleeneopen{}as\mkleeneclose{}\mcdot{}  THEN  Auto  THEN  RWO  "bag-member-append"  0  THEN  Auto)
              )
  THEN  (Assert  0  *  s  \mmember{}  bag(|K|  \mtimes{}  S)  BY
                          (BLemma  `bag-in-subtype2`  THEN  Auto)))




Home Index