Nuprl Lemma : sum-ite

`∀[k:ℕ]. ∀[f,g:ℕk ⟶ ℤ]. ∀[p:ℕk ⟶ 𝔹].`
`  (Σ(if p[i] then f[i] + g[i] else f[i] fi  | i < k) = (Σ(f[i] | i < k) + Σ(if p[i] then g[i] else 0 fi  | i < k)) ∈ ℤ)`

Proof

Definitions occuring in Statement :  sum: `Σ(f[x] | x < k)` int_seg: `{i..j-}` nat: `ℕ` ifthenelse: `if b then t else f fi ` bool: `𝔹` uall: `∀[x:A]. B[x]` so_apply: `x[s]` function: `x:A ⟶ B[x]` add: `n + m` natural_number: `\$n` int: `ℤ` equal: `s = t ∈ T`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` member: `t ∈ T` so_lambda: `λ2x.t[x]` so_apply: `x[s]` nat: `ℕ` all: `∀x:A. B[x]` implies: `P `` Q` false: `False` ge: `i ≥ j ` uimplies: `b supposing a` satisfiable_int_formula: `satisfiable_int_formula(fmla)` exists: `∃x:A. B[x]` not: `¬A` top: `Top` and: `P ∧ Q` prop: `ℙ` decidable: `Dec(P)` or: `P ∨ Q` subtype_rel: `A ⊆r B` le: `A ≤ B` less_than': `less_than'(a;b)` bool: `𝔹` unit: `Unit` it: `⋅` btrue: `tt` uiff: `uiff(P;Q)` ifthenelse: `if b then t else f fi ` bfalse: `ff` iff: `P `⇐⇒` Q` rev_implies: `P `` Q` int_seg: `{i..j-}` lelt: `i ≤ j < k` sq_type: `SQType(T)` guard: `{T}` bnot: `¬bb` assert: `↑b`
Lemmas referenced :  sum-as-primrec ifthenelse_wf int_seg_wf nat_properties satisfiable-full-omega-tt intformand_wf intformle_wf itermConstant_wf itermVar_wf intformless_wf int_formula_prop_and_lemma int_formula_prop_le_lemma int_term_value_constant_lemma int_term_value_var_lemma int_formula_prop_less_lemma int_formula_prop_wf ge_wf less_than_wf bool_wf primrec0_lemma decidable__le subtract_wf intformnot_wf itermSubtract_wf int_formula_prop_not_lemma int_term_value_subtract_lemma subtype_rel_dep_function int_seg_subtype false_wf subtype_rel_self primrec-unroll eq_int_wf uiff_transitivity equal-wf-base int_subtype_base assert_wf eqtt_to_assert assert_of_eq_int intformeq_wf int_formula_prop_eq_lemma iff_transitivity bnot_wf not_wf iff_weakening_uiff eqff_to_assert assert_of_bnot decidable__lt lelt_wf decidable__equal_int add-is-int-iff itermAdd_wf int_term_value_add_lemma equal_wf bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot nat_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut sqequalRule extract_by_obid sqequalHypSubstitution isectElimination thin hypothesisEquality lambdaEquality applyEquality functionExtensionality natural_numberEquality setElimination rename because_Cache hypothesis intEquality addEquality lambdaFormation intWeakElimination independent_isectElimination dependent_pairFormation int_eqEquality dependent_functionElimination isect_memberEquality voidElimination voidEquality independent_pairFormation computeAll independent_functionElimination axiomEquality functionEquality unionElimination equalityElimination baseApply closedConclusion baseClosed productElimination impliesFunctionality dependent_set_memberEquality equalityTransitivity equalitySymmetry pointwiseFunctionality promote_hyp instantiate cumulativity

Latex:
\mforall{}[k:\mBbbN{}].  \mforall{}[f,g:\mBbbN{}k  {}\mrightarrow{}  \mBbbZ{}].  \mforall{}[p:\mBbbN{}k  {}\mrightarrow{}  \mBbbB{}].
(\mSigma{}(if  p[i]  then  f[i]  +  g[i]  else  f[i]  fi    |  i  <  k)
=  (\mSigma{}(f[i]  |  i  <  k)  +  \mSigma{}(if  p[i]  then  g[i]  else  0  fi    |  i  <  k)))

Date html generated: 2017_04_14-AM-09_20_36
Last ObjectModification: 2017_02_27-PM-03_57_06

Theory : int_2

Home Index