Step * 1 2 1 of Lemma lsum-split


1. Type
2. List
3. {x:T| (x ∈ L)}  ⟶ 𝔹
4. {x:T| (x ∈ L)}  ⟶ ℤ
5. l_sum(map(f;L)) (l_sum(map(f;filter(P;L))) l_sum(map(f;filter(λx.(¬b(P x));L)))) ∈ ℤ
⊢ l_sum(map(λx.f[x];filter(λx.P[x];L))) l_sum(map(f;filter(P;L))) ∈ ℤ
BY
((Assert L ∈ {x:T| (x ∈ L)}  List BY Auto) THEN RepeatFor (EqCDA) THEN Try ((FunExt THEN Auto))) }

1
.....subterm..... T:t
2:n
1. Type
2. List
3. {x:T| (x ∈ L)}  ⟶ 𝔹
4. {x:T| (x ∈ L)}  ⟶ ℤ
5. l_sum(map(f;L)) (l_sum(map(f;filter(P;L))) l_sum(map(f;filter(λx.(¬b(P x));L)))) ∈ ℤ
6. L ∈ {x:T| (x ∈ L)}  List
⊢ filter(λx.P[x];L) filter(P;L) ∈ ({x:T| (x ∈ L)}  List)


Latex:


Latex:

1.  T  :  Type
2.  L  :  T  List
3.  P  :  \{x:T|  (x  \mmember{}  L)\}    {}\mrightarrow{}  \mBbbB{}
4.  f  :  \{x:T|  (x  \mmember{}  L)\}    {}\mrightarrow{}  \mBbbZ{}
5.  l\_sum(map(f;L))  =  (l\_sum(map(f;filter(P;L)))  +  l\_sum(map(f;filter(\mlambda{}x.(\mneg{}\msubb{}(P  x));L))))
\mvdash{}  l\_sum(map(\mlambda{}x.f[x];filter(\mlambda{}x.P[x];L)))  =  l\_sum(map(f;filter(P;L)))


By


Latex:
((Assert  L  \mmember{}  \{x:T|  (x  \mmember{}  L)\}    List  BY  Auto)  THEN  RepeatFor  2  (EqCDA)  THEN  Try  ((FunExt  THEN  Auto)))




Home Index