fintech-algorithms
Using a coding agent? Give it the skill: npx skills add IslamBaraka90/Fintech-Algorithms-Library What it does →

Summation, Products, and Index Notation

Install and import#

bash
npm install fintech-algorithms
ts
import { summationProductsAndIndexNotation } from "fintech-algorithms/foundations/mathematical-language-and-quantitative-reasoning/summation-products-and-index-notation";

Signature#

summationProductsAndIndexNotation(input)

Reduces a series to its sum and its product, and re-emits it as explicitly numbered terms so subscript notation can be read against real values.

Parameters#

NameTypeNotes
inputD00InputA plain object. Every F01 topic first reads values, which must be a non-empty array of finite numbers, and validates it before any per-topic branch runs. This topic uses values itself and reads no further keys.

Returns#

{ sum: number; product: number; indexedTerms: { index: number; value: number }[] }

sum and product reduce the series. indexedTerms pairs each value with its position, numbered from 1 rather than 0.

Errors#

  • When input is not a plain object — throws TypeError
  • When values is missing, empty, or not an array — throws RangeError
  • When values contains a value that is not a finite number — throws RangeError

Complexity: time O(n), space O(n).

Worked example#

verified This is the worked example published in the article, replayed by the test suite on every run. The output cannot drift.

Input#

input
{
  "values": [1, 2, 3, 4, 5],
  "startingCash": 1000,
  "inflows": 250,
  "outflows": 120,
  "slope": 2,
  "intercept": 1,
  "part": 25,
  "whole": 200,
  "elapsed": 5,
  "old": 4.5,
  "new": 4.75,
  "base": 16,
  "exponent": 0.5,
  "a": 2
}

Showing 14 of 28 fields.

Call#

summationProductsAndIndexNotation(input)

Returns#

object with 2 fields: sum, product

{
  "sum": 15,
  "product": 120
}

Diagrams#

Summation, Products, and Index Notation — concept anatomy
Summation, Products, and Index Notation — lesson map
Summation, Products, and Index Notation — mistake contrast

Calculation flow#

Summation, Products, and Index Notation — four-part map
flowchart LR
    A["Name the input"] --> B["Apply: sum = value₁ + value₂ + … + valueₙ; product = factor₁ × factor₂ × … × factorₙ"]
    B --> C["Check units and boundary"]
    C --> D["Explain the output"]

How it works#

This page states the contract — how to call it correctly. The article explains the concept: why it works, and where it breaks.

Read the article →

References#

  • NIST/SEMATECH e-Handbook of Statistical Methods — NIST/SEMATECH
  • Author-derived and synthetic boundary

The rest of the Mathematical Language and Quantitative Reasoning family#