Summation and Products

Symbolic summation and products in MathHook provide closed-form formulas for arithmetic series, geometric series, power sums, and convergence analysis for infinite series.

πŸ“

Mathematical Definition

Arithmetic Series:

βˆ‘i=1n[a+(iβˆ’1)d]=n2Γ—[2a+(nβˆ’1)d]\sum_{i=1}^{n} [a + (i-1)d] = \frac{n}{2} \times [2a + (n-1)d]

Geometric Series (Finite):

βˆ‘i=1nariβˆ’1=aΓ—1βˆ’rn1βˆ’rforΒ rβ‰ 1\sum_{i=1}^{n} ar^{i-1} = a \times \frac{1 - r^n}{1 - r} \quad \text{for } r \neq 1

Geometric Series (Infinite):

βˆ‘i=1∞ariβˆ’1=a1βˆ’rfor ∣r∣<1\sum_{i=1}^{\infty} ar^{i-1} = \frac{a}{1 - r} \quad \text{for } |r| < 1

Power Sums (Faulhaber's Formulas): - βˆ‘i=1n1=n\sum_{i=1}^{n} 1 = n - βˆ‘i=1ni=n(n+1)2\sum_{i=1}^{n} i = \frac{n(n+1)}{2} (Gauss's formula) - βˆ‘i=1ni2=n(n+1)(2n+1)6\sum_{i=1}^{n} i^2 = \frac{n(n+1)(2n+1)}{6} - βˆ‘i=1ni3=[n(n+1)2]2\sum_{i=1}^{n} i^3 = \left[\frac{n(n+1)}{2}\right]^2 (Nicomachus's theorem)

p-Series Convergence:

βˆ‘n=1∞1np{convergesifΒ p>1Β divergesifΒ p≀1\sum_{n=1}^{\infty} \frac{1}{n^p} \begin{cases} \text{converges} & \text{if } p > 1 \ \text{diverges} & \text{if } p \leq 1 \end{cases}

Code Examples

Arithmetic Series (Gauss's Formula)

Sum of integers from 1 to n

use mathhook::prelude::*;
use summation::SummationMethods;

// Sum of integers from 1 to 10
let first_term = expr!(1);
let common_diff = expr!(1);
let num_terms = expr!(10);

let sum = SummationMethods::arithmetic_series(
    &first_term,
    &common_diff,
    &num_terms
);
println!("{}", sum);  // 55

Geometric Series

1 + 1/2 + 1/4 + ...

use mathhook::prelude::*;
use summation::SummationMethods;

// 1 + 1/2 + 1/4 (three terms)
let first = expr!(1);
let ratio = expr!(1 / 2);
let n = expr!(3);

let sum = SummationMethods::geometric_series(&first, &ratio, &n);
println!("{}", sum);  // 7/4 (exact rational)

Infinite Geometric Series

Converges when |r| < 1

use mathhook::prelude::*;
use summation::SummationMethods;

// 1 + 1/3 + 1/9 + 1/27 + ...
let first = expr!(1);
let ratio = Expression::rational(1, 3);

let sum = SummationMethods::infinite_geometric_series(&first, &ratio);
println!("{}", sum);  // 3/2 (exact rational)

Power Sums (Nicomachus's Theorem)

Sum of cubes equals square of sum

use mathhook::prelude::*;

let power = expr!(3);
let n = expr!(4);
let sum = SummationMethods::power_sum(&power, &n);
println!("{}", sum);  // 100 (1 + 8 + 27 + 64 = 10^2)

πŸ”— Related Topics