KU0002

division_add_quotient_upper

Dependency-curried candidate body; not Alpha-enrolled; no checked-use authority

The quotient of a sum is at most one above the sum of its quotients.

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.

Exact expanded first-order arithmetic statement

forall d a b q r s t Q R. (((a) = (d) * (q) + (r) /\ (exists bcf_lt_gap_kmvadqb_left_bound. bcf_lt_gap_kmvadqb_left_bound + S (r) = d))) -> (((b) = (d) * (s) + (t) /\ (exists bcf_lt_gap_kmvadqb_right_bound. bcf_lt_gap_kmvadqb_right_bound + S (t) = d))) -> (((a + b) = (d) * (Q) + (R) /\ (exists bcf_lt_gap_kmvadqb_total_bound. bcf_lt_gap_kmvadqb_total_bound + S (R) = d))) -> (exists bcf_le_gap_kmvadqu_result. bcf_le_gap_kmvadqu_result + (Q) = S (q + s))

Constructive proof overview

Generated structural guide

The quotient of a sum is at most one above the sum of its quotients.

The unchanged tactic script uses 3 declared prerequisites and contains 36 exact native proof lines.

dependency-curried kernel-checked theorem body; Alpha enrollment and checked-use authority follow separately sealed release evidence; Stable membership remains unchanged

Proof neighborhood

Direct dependencies

KU0000 division_add_quotient_bit le_refl Stable theorem; checked-use authorized le_succ Stable theorem; checked-use authorized

Direct dependents

none

Formal native tactic body

Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This dependency-curried candidate body does not grant checked theorem use or Stable membership.

Read the argument

Proof checkpoints

36 script commands · 9 reading checkpoints · 1 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.

Named ingredients (1)
01Fix variables and assumptionsL1–10

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

  1. L1
    intro d
  2. L2
    intro a
  3. L3
    intro b
  4. L4
    intro q
  5. L5
    intro r
  6. L6
    intro s
  7. L7
    intro t
  8. L8
    intro Q
  9. L9
    intro R
  10. L10
    intro hleft
02Fix variables and assumptionsL11–12

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

  1. L11
    intro hright
  2. L12
    intro htotal
03Use earlier factsL13–21

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L13
    specialize division_add_quotient_bit d
  2. L14
    specialize division_add_quotient_bit a
  3. L15
    specialize division_add_quotient_bit b
  4. L16
    specialize division_add_quotient_bit q
  5. L17
    specialize division_add_quotient_bit r
  6. L18
    specialize division_add_quotient_bit s
  7. L19
    specialize division_add_quotient_bit t
  8. L20
    specialize division_add_quotient_bit Q
  9. L21
    specialize division_add_quotient_bit R
04Establish hbitL22–26

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply division add quotient bit.

  1. L22
    have hbit : Q = q + s \/ Q = S (q + s)
  2. L23
    apply division_add_quotient_bit
  3. L24
    exact hleft
  4. L25
    exact hright
  5. L26
    exact htotal
05Separate the logical casesL27–27

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

  1. L27
    cases hbit
06Calculate and transport equalitiesL28–28

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

  1. L28
    rewrite hbit_left
07Use earlier factsL29–33

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L29
    specialize le_succ (q + s)
  2. L30
    specialize le_succ (q + s)
  3. L31
    apply le_succ
  4. L32
    specialize le_refl (q + s)
  5. L33
    exact le_refl
08Calculate and transport equalitiesL34–34

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

  1. L34
    rewrite hbit_right
09Use earlier factsL35–36

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L35
    specialize le_refl (S (q + s))
  2. L36
    exact le_refl

Library-wide reading audit

Original exact command ledger · 36 lines
  1. 0001intro d
  2. 0002intro a
  3. 0003intro b
  4. 0004intro q
  5. 0005intro r
  6. 0006intro s
  7. 0007intro t
  8. 0008intro Q
  9. 0009intro R
  10. 0010intro hleft
  11. 0011intro hright
  12. 0012intro htotal
  13. 0013specialize division_add_quotient_bit d
  14. 0014specialize division_add_quotient_bit a
  15. 0015specialize division_add_quotient_bit b
  16. 0016specialize division_add_quotient_bit q
  17. 0017specialize division_add_quotient_bit r
  18. 0018specialize division_add_quotient_bit s
  19. 0019specialize division_add_quotient_bit t
  20. 0020specialize division_add_quotient_bit Q
  21. 0021specialize division_add_quotient_bit R
  22. 0022have hbit : Q = q + s \/ Q = S (q + s)
  23. 0023apply division_add_quotient_bit
  24. 0024exact hleft
  25. 0025exact hright
  26. 0026exact htotal
  27. 0027cases hbit
  28. 0028rewrite hbit_left
  29. 0029specialize le_succ (q + s)
  30. 0030specialize le_succ (q + s)
  31. 0031apply le_succ
  32. 0032specialize le_refl (q + s)
  33. 0033exact le_refl
  34. 0034rewrite hbit_right
  35. 0035specialize le_refl (S (q + s))
  36. 0036exact le_refl