BA0010

cf_approximation_subtract_previous_error_balance

Actual numerator and denominator coordinate equations transport the represented rational error exactly.

Alpha v34 checked-use · first admitted v29 · independently kernel and Lean verified; not Stable

Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved. Exact original first-admission records.

The initial 0/1 convergent is included: u is natural, not necessarily positive. Comparison denominators are strictly smaller and positive. Signed competitors are represented by an arbitrary difference rp−rn. Approximation inequalities are proved from the trace, never stored as assumptions in Convergent.

Exact theorem in conservative defined notation

∀ a. ∀ b. ∀ u. ∀ U. ∀ v. ∀ V. ∀ rp. ∀ rn. ∀ t. ∀ c. ∀ d. rp + d · U = rn + c · u ∧ t + d · V = c · v → a · t + b · rn + (c · (b · u) + d · (a · V)) = c · (a · v) + d · (b · U) + b · rp

Every linked abbreviation expands hygienically to the identical original native formula.

Definition DAG

none

Actual proof prerequisites

mul_add · checked external prerequisitemul_assoc · checked external prerequisitemul_comm · checked external prerequisiteadd_assoc · checked external prerequisiteadd_comm · checked external prerequisitefour_square_add_swap_right_tail · checked external prerequisite
Original expanded first-order statement
forall a b u U v V rp rn t c d. (((rp + d * U = rn + c * u) /\ (t + d * V = c * v))) -> (a * t + b * rn) + (c * (b * u) + d * (a * V)) = (c * (a * v) + d * (b * U)) + (b * rp)

Complete tactic proof in conservative notation

All 18 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay script.

Read the argument

Proof checkpoints

18 script commands · 4 reading checkpoints · 0 local claims

This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.

Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.

01Fix variables and assumptionsL1–10

Work with arbitrary variables or the premises of the current implication.

  1. L1
    intro a
  2. L2
    intro b
  3. L3
    intro u
  4. L4
    intro U
  5. L5
    intro v
  6. L6
    intro V
  7. L7
    intro rp
  8. L8
    intro rn
  9. L9
    intro t
  10. L10
    intro c
02Fix variables and assumptionsL11–12

Work with arbitrary variables or the premises of the current implication.

  1. L11
    intro d
  2. L12
    intro h
03Separate the logical casesL13–13

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L13
    cases h
04Calculate and transport equalitiesL14–18

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L14
    trans a * (t + d * V) + b * (rn + c * u)
  2. L15
    simp [mul_add, mul_assoc, mul_comm, add_assoc, add_comm, four_square_add_swap_right_tail]
  3. L16
    rewrite h_right
  4. L17
    rewrite <- h_left
  5. L18
    simp [mul_add, mul_assoc, mul_comm, add_assoc, add_comm, four_square_add_swap_right_tail]

Library-wide reading audit

Original defined command ledger · 18 lines
  1. 0001intro a
  2. 0002intro b
  3. 0003intro u
  4. 0004intro U
  5. 0005intro v
  6. 0006intro V
  7. 0007intro rp
  8. 0008intro rn
  9. 0009intro t
  10. 0010intro c
  11. 0011intro d
  12. 0012intro h
  13. 0013cases h
  14. 0014trans a * (t + d * V) + b * (rn + c * u)
  15. 0015simp [mul_add, mul_assoc, mul_comm, add_assoc, add_comm, four_square_add_swap_right_tail]
  16. 0016rewrite h_right
  17. 0017rewrite <- h_left
  18. 0018simp [mul_add, mul_assoc, mul_comm, add_assoc, add_comm, four_square_add_swap_right_tail]