Step
*
2
of Lemma
bag-product-no-repeats
1. A : Type
2. B : Type
3. u : A
4. v : A List
5. bag-no-repeats(A;v)
⇒ (∀bs:bag(B). (bag-no-repeats(B;bs)
⇒ bag-no-repeats(A × B;v × bs)))
6. bag-no-repeats(A;[u / v])
7. bs : bag(B)
8. bag-no-repeats(B;bs)
⊢ bag-no-repeats(A × B;[u / v] × bs)
BY
{ ((Fold `cons-bag` 0 THEN RWO "cons-bag-as-append" 0 THEN Auto)
THEN RWO "bag-product-append" 0
THEN Auto
THEN BLemma `bag-append-no-repeats`
THEN Auto) }
1
1. A : Type
2. B : Type
3. u : A
4. v : A List
5. bag-no-repeats(A;v)
⇒ (∀bs:bag(B). (bag-no-repeats(B;bs)
⇒ bag-no-repeats(A × B;v × bs)))
6. bag-no-repeats(A;[u / v])
7. bs : bag(B)
8. bag-no-repeats(B;bs)
⊢ bag-no-repeats(A × B;{u} × bs)
2
1. A : Type
2. B : Type
3. u : A
4. v : A List
5. bag-no-repeats(A;v)
⇒ (∀bs:bag(B). (bag-no-repeats(B;bs)
⇒ bag-no-repeats(A × B;v × bs)))
6. bag-no-repeats(A;[u / v])
7. bs : bag(B)
8. bag-no-repeats(B;bs)
9. bag-no-repeats(A × B;{u} × bs)
⊢ bag-no-repeats(A × B;v × bs)
3
1. A : Type
2. B : Type
3. u : A
4. v : A List
5. bag-no-repeats(A;v)
⇒ (∀bs:bag(B). (bag-no-repeats(B;bs)
⇒ bag-no-repeats(A × B;v × bs)))
6. bag-no-repeats(A;[u / v])
7. bs : bag(B)
8. bag-no-repeats(B;bs)
9. bag-no-repeats(A × B;{u} × bs)
10. bag-no-repeats(A × B;v × bs)
11. z : A × B
12. z ↓∈ {u} × bs
⊢ ¬z ↓∈ v × bs
Latex:
Latex:
1. A : Type
2. B : Type
3. u : A
4. v : A List
5. bag-no-repeats(A;v) {}\mRightarrow{} (\mforall{}bs:bag(B). (bag-no-repeats(B;bs) {}\mRightarrow{} bag-no-repeats(A \mtimes{} B;v \mtimes{} bs)))
6. bag-no-repeats(A;[u / v])
7. bs : bag(B)
8. bag-no-repeats(B;bs)
\mvdash{} bag-no-repeats(A \mtimes{} B;[u / v] \mtimes{} bs)
By
Latex:
((Fold `cons-bag` 0 THEN RWO "cons-bag-as-append" 0 THEN Auto)
THEN RWO "bag-product-append" 0
THEN Auto
THEN BLemma `bag-append-no-repeats`
THEN Auto)
Home
Index