Step
*
1
1
1
1
of Lemma
bag-map-equal
.....eq aux..... 
1. T : Type
2. A : Type
3. f : T ⟶ A
4. g : T ⟶ A
5. P : T ⟶ 𝔹
6. ∀x:T. ((¬↑(P x)) 
⇒ ((f x) = (g x) ∈ A))
7. as : T List
8. bs : T List
9. permutation(T;as;bs)
10. x : ↑bag-null([x∈as|P x])
⊢ bag-map(f;as) = bag-map(g;as) ∈ bag(A)
BY
{ (RepUR ``bag-filter bag-null`` -1
   THEN RepUR ``bag-map`` 0
   THEN Auto
   THEN SubsumeC ⌜A List⌝⋅
   THEN Auto
   THEN BLemma `map_equal`
   THEN Auto
   THEN BackThruSomeHyp) }
1
1. T : Type
2. A : Type
3. f : T ⟶ A
4. g : T ⟶ A
5. P : T ⟶ 𝔹
6. ∀x:T. ((¬↑(P x)) 
⇒ ((f x) = (g x) ∈ A))
7. as : T List
8. bs : T List
9. permutation(T;as;bs)
10. x : ↑null(filter(λx.(P x);as))
11. i : ℕ
12. i < ||as||
⊢ ¬↑(P as[i])
Latex:
Latex:
.....eq  aux..... 
1.  T  :  Type
2.  A  :  Type
3.  f  :  T  {}\mrightarrow{}  A
4.  g  :  T  {}\mrightarrow{}  A
5.  P  :  T  {}\mrightarrow{}  \mBbbB{}
6.  \mforall{}x:T.  ((\mneg{}\muparrow{}(P  x))  {}\mRightarrow{}  ((f  x)  =  (g  x)))
7.  as  :  T  List
8.  bs  :  T  List
9.  permutation(T;as;bs)
10.  x  :  \muparrow{}bag-null([x\mmember{}as|P  x])
\mvdash{}  bag-map(f;as)  =  bag-map(g;as)
By
Latex:
(RepUR  ``bag-filter  bag-null``  -1
  THEN  RepUR  ``bag-map``  0
  THEN  Auto
  THEN  SubsumeC  \mkleeneopen{}A  List\mkleeneclose{}\mcdot{}
  THEN  Auto
  THEN  BLemma  `map\_equal`
  THEN  Auto
  THEN  BackThruSomeHyp)
Home
Index