Step
*
1
of Lemma
bag-induction
1. [T] : Type
2. [P] : bag(T) ⟶ ℙ
3. ∀x:T. P[[x]]
4. ∀bs:bag({b:bag(T)| P[b]} ). P[bag-union(bs)]
5. b : bag(T)
⊢ P[b]
BY
{ Subst' b ~ bag-union(bag-map(λx.[x];b)) 0 }
1
.....equality.....
1. T : Type
2. P : bag(T) ⟶ ℙ
3. ∀x:T. P[[x]]
4. ∀bs:bag({b:bag(T)| P[b]} ). P[bag-union(bs)]
5. b : bag(T)
⊢ b ~ bag-union(bag-map(λx.[x];b))
2
1. [T] : Type
2. [P] : bag(T) ⟶ ℙ
3. ∀x:T. P[[x]]
4. ∀bs:bag({b:bag(T)| P[b]} ). P[bag-union(bs)]
5. b : bag(T)
⊢ P[bag-union(bag-map(λx.[x];b))]
Latex:
Latex:
1. [T] : Type
2. [P] : bag(T) {}\mrightarrow{} \mBbbP{}
3. \mforall{}x:T. P[[x]]
4. \mforall{}bs:bag(\{b:bag(T)| P[b]\} ). P[bag-union(bs)]
5. b : bag(T)
\mvdash{} P[b]
By
Latex:
Subst' b \msim{} bag-union(bag-map(\mlambda{}x.[x];b)) 0
Home
Index