Skip to content
Rainbow docs menu

Reference · Analysis

rainbow.math.analysis.geometric-sequence

Analysissrc/rainbow/math/analysis/geometric_sequence.clj1 definitions, 4 theorems

In Rainbow 1.4.1, lein verify rainbow.math.analysis.geometric-sequence fails on its own: the module uses lemmas from math.logic.half-monotone, math.nat.add-order without listing them in its dependencies. It checks once those are installed.

The geometric contraction sequence as a native recursive function and its general (forall-n) step monotonicity -- the sequence-level consequence of the halving-monotonicity keystone (nnrat/half-le-self). For a starting distance d0 the sequence seq d0 0 = d0 seq d0 (succ n) = (1/2) * (seq d0 n) (= (1/2)^n * d0) is defined by recursion on n (data/Nat.rec). Its step monotonicity seq d0 (succ n) <= seq d0 n for every n is exactly nnrat/half-le-self instantiated at the term (seq d0 n): the next distance is half the current one, hence no larger. This is the general monotone-decrease of the contraction distances (the worked instances live in geometric-convergence), one of the two ingredients -- with a modulus that drives the distance below any threshold -- of the forall-epsilon convergence theorem convergence/converges-to. Requires nnrat/multiply, nnrat/half, nnrat/at-most, and nnrat/half-le-self.

geometric/seq

DefinitionSource, line 65

geometric/seq :
  (x₁ : ℚ≥0) (x₂ : ℕ)
  → ℚ≥0

ℕ = data/Natℚ≥0 = nnrat/NonnegativeRational

geometric/seq-step-unfold

TheoremHolds by unfolding a definitionNo axiomsSource, line 84

geometric/seq-step-unfold :
  (d0 : ℚ≥0) (n : ℕ)
  → geometric/seq d0 (data/succ n) = nnrat/half · geometric/seq d0 n

= = equality/Eq· = nnrat/multiplyℕ = data/Natℚ≥0 = nnrat/NonnegativeRational

geometric/seq-step-monotone

TheoremFor all inputsNo axiomsSource, line 99

geometric/seq-step-monotone :
  (d0 : ℚ≥0) (n : ℕ)
  → geometric/seq d0 (data/succ n) ≤ geometric/seq d0 n

ℕ = data/Natℚ≥0 = nnrat/NonnegativeRational≤ = nnrat/at-most

geometric/seq-decreases-with-iteration

TheoremFor all inputsNo axiomsSource, line 115

geometric/seq-decreases-with-iteration :
  (d0 : ℚ≥0) (n k : ℕ)
  → geometric/seq d0 (algebra/nat-add n k) ≤ geometric/seq d0 k

ℕ = data/Natℚ≥0 = nnrat/NonnegativeRational≤ = nnrat/at-most

geometric/seq-numerator-invariant

TheoremFor all inputsNo axiomsSource, line 153

geometric/seq-numerator-invariant :
  (d0 : ℚ≥0) (n : ℕ)
  → nnrat/numerator (geometric/seq d0 n) = nnrat/numerator d0

= = equality/Eqℕ = data/Natℚ≥0 = nnrat/NonnegativeRational