Step * 2 1 of Lemma l_sum-mapfilter


1. Type
2. T
3. List
4. ∀[P:T ⟶ 𝔹]. ∀[f:{x:T| (x ∈ v) ∧ (↑(P x))}  ⟶ ℤ].
     (l_sum(map(f;filter(P;v))) = Σ(if v[i] then v[i] else fi  i < ||v||) ∈ ℤ)
5. T ⟶ 𝔹
6. ∀[f:{x:T| (x ∈ v) ∧ (↑(P x))}  ⟶ ℤ]
     (l_sum(map(f;filter(P;v))) = Σ(if v[i] then v[i] else fi  i < ||v||) ∈ ℤ)
7. {x:T| (x ∈ [u v]) ∧ (↑(P x))}  ⟶ ℤ
8. l_sum(map(f;filter(P;v))) = Σ(if v[i] then v[i] else fi  i < ||v||) ∈ ℤ
⊢ l_sum(map(f;if then [u filter(P;v)] else filter(P;v) fi ))
= Σ(if [u v][i] then [u v][i] else fi  i < ||v|| 1)
∈ ℤ
BY
((InstLemma `sum_split` [⌜||v|| 1⌝;⌜λ2i.if [u v][i] then [u v][i] else fi ⌝;⌜1⌝]⋅
    THENA Try (Complete (Auto))
    )
   THEN Try ((HypSubst' (-1) THEN Thin (-1)))
   }

1
1. Type
2. T
3. List
4. ∀[P:T ⟶ 𝔹]. ∀[f:{x:T| (x ∈ v) ∧ (↑(P x))}  ⟶ ℤ].
     (l_sum(map(f;filter(P;v))) = Σ(if v[i] then v[i] else fi  i < ||v||) ∈ ℤ)
5. T ⟶ 𝔹
6. ∀[f:{x:T| (x ∈ v) ∧ (↑(P x))}  ⟶ ℤ]
     (l_sum(map(f;filter(P;v))) = Σ(if v[i] then v[i] else fi  i < ||v||) ∈ ℤ)
7. {x:T| (x ∈ [u v]) ∧ (↑(P x))}  ⟶ ℤ
8. l_sum(map(f;filter(P;v))) = Σ(if v[i] then v[i] else fi  i < ||v||) ∈ ℤ
⊢ l_sum(map(f;if then [u filter(P;v)] else filter(P;v) fi ))
(if [u v][x] then [u v][x] else fi  x < 1)
  + Σ(if [u v][x 1] then [u v][x 1] else fi  x < (||v|| 1) 1))
∈ ℤ


Latex:


Latex:

1.  T  :  Type
2.  u  :  T
3.  v  :  T  List
4.  \mforall{}[P:T  {}\mrightarrow{}  \mBbbB{}].  \mforall{}[f:\{x:T|  (x  \mmember{}  v)  \mwedge{}  (\muparrow{}(P  x))\}    {}\mrightarrow{}  \mBbbZ{}].
          (l\_sum(map(f;filter(P;v)))  =  \mSigma{}(if  P  v[i]  then  f  v[i]  else  0  fi    |  i  <  ||v||))
5.  P  :  T  {}\mrightarrow{}  \mBbbB{}
6.  \mforall{}[f:\{x:T|  (x  \mmember{}  v)  \mwedge{}  (\muparrow{}(P  x))\}    {}\mrightarrow{}  \mBbbZ{}]
          (l\_sum(map(f;filter(P;v)))  =  \mSigma{}(if  P  v[i]  then  f  v[i]  else  0  fi    |  i  <  ||v||))
7.  f  :  \{x:T|  (x  \mmember{}  [u  /  v])  \mwedge{}  (\muparrow{}(P  x))\}    {}\mrightarrow{}  \mBbbZ{}
8.  l\_sum(map(f;filter(P;v)))  =  \mSigma{}(if  P  v[i]  then  f  v[i]  else  0  fi    |  i  <  ||v||)
\mvdash{}  l\_sum(map(f;if  P  u  then  [u  /  filter(P;v)]  else  filter(P;v)  fi  ))
=  \mSigma{}(if  P  [u  /  v][i]  then  f  [u  /  v][i]  else  0  fi    |  i  <  ||v||  +  1)


By


Latex:
((InstLemma  `sum\_split`  [\mkleeneopen{}||v||  +  1\mkleeneclose{};\mkleeneopen{}\mlambda{}\msubtwo{}i.if  P  [u  /  v][i]  then  f  [u  /  v][i]  else  0  fi  \mkleeneclose{};\mkleeneopen{}1\mkleeneclose{}]\mcdot{}
    THENA  Try  (Complete  (Auto))
    )
  THEN  Try  ((HypSubst'  (-1)  0  THEN  Thin  (-1)))
  )




Home Index