Step
*
1
2
1
1
of Lemma
bag-union_wf
1. T : Type
2. as : bag(T) List
3. bs : bag(T) List
4. permutation(bag(T);as;bs)
5. ∀L:bag(T) List. (concat(L) ∈ bag(T))
6. as@0 : bag(T) List
7. a : bag(T)
8. concat([a / as@0]) = concat(as) ∈ bag(T)
⊢ concat(as@0 @ [a]) = concat(as) ∈ bag(T)
BY
{ (NthHypEqTrans (-1)
   THEN (RWO "concat_append" 0 THENW Auto)
   THEN (Subst' concat([a]) ~ a 0 THENA (RepUR ``concat`` 0 THEN RWO  "append-nil" 0 THEN Auto))) }
1
1. T : Type
2. as : bag(T) List
3. bs : bag(T) List
4. permutation(bag(T);as;bs)
5. ∀L:bag(T) List. (concat(L) ∈ bag(T))
6. as@0 : bag(T) List
7. a : bag(T)
8. concat([a / as@0]) = concat(as) ∈ bag(T)
⊢ concat([a / as@0]) = (concat(as@0) @ a) ∈ bag(T)
Latex:
Latex:
1.  T  :  Type
2.  as  :  bag(T)  List
3.  bs  :  bag(T)  List
4.  permutation(bag(T);as;bs)
5.  \mforall{}L:bag(T)  List.  (concat(L)  \mmember{}  bag(T))
6.  as@0  :  bag(T)  List
7.  a  :  bag(T)
8.  concat([a  /  as@0])  =  concat(as)
\mvdash{}  concat(as@0  @  [a])  =  concat(as)
By
Latex:
(NthHypEqTrans  (-1)
  THEN  (RWO  "concat\_append"  0  THENW  Auto)
  THEN  (Subst'  concat([a])  \msim{}  a  0  THENA  (RepUR  ``concat``  0  THEN  RWO    "append-nil"  0  THEN  Auto)))
Home
Index