BT0055

le_scaled_nonzero

Stable checked-use theorem · independently kernel verified

Scaling by a nonzero natural does not decrease a natural.

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 PA statement

forall C B. ~(C = 0) -> exists h. h + B = C * B

Structural proof guide

Scaling by a nonzero natural does not decrease a natural.

Direct prerequisites: one_le_of_ne_zero, mul_le_mul_right, one_mul. The authored body proceeds by intermediate claims (2), equality transport (1).

Proof neighborhood

Direct dependencies

Direct dependents

Formal native tactic body

Dependencies are hypotheses of the historical Alpha-v12 body receipt. The complete historical Alpha-v18 proof bundle independently checks every dependency; current Alpha v25 preserves that checked theorem use without changing Stable membership.

Read the argument

Proof checkpoints

16 script commands · 3 reading checkpoints · 2 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 (3)
01Fix variables and assumptionsL1–3

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

  1. L1
    intro C
  2. L2
    intro B
  3. L3
    intro hC
02Establish h1CL4–7

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply one le of ne zero.

  1. L4
    have h1C : exists h. h + 1 = C
  2. L5
    specialize one_le_of_ne_zero C
  3. L6
    apply one_le_of_ne_zero
  4. L7
    exact hC
03Establish hscaledL8–16

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul le mul right.

  1. L8
    have hscaled : exists h. h + 1 * B = C * B
  2. L9
    specialize mul_le_mul_right 1
  3. L10
    specialize mul_le_mul_right C
  4. L11
    specialize mul_le_mul_right B
  5. L12
    apply mul_le_mul_right
  6. L13
    exact h1C
  7. L14
    specialize one_mul B
  8. L15
    rewrite one_mul at hscaled
  9. L16
    exact hscaled

Library-wide reading audit

Original exact command ledger · 16 lines
  1. 0001intro C
  2. 0002intro B
  3. 0003intro hC
  4. 0004have h1C : exists h. h + 1 = C
  5. 0005specialize one_le_of_ne_zero C
  6. 0006apply one_le_of_ne_zero
  7. 0007exact hC
  8. 0008have hscaled : exists h. h + 1 * B = C * B
  9. 0009specialize mul_le_mul_right 1
  10. 0010specialize mul_le_mul_right C
  11. 0011specialize mul_le_mul_right B
  12. 0012apply mul_le_mul_right
  13. 0013exact h1C
  14. 0014specialize one_mul B
  15. 0015rewrite one_mul at hscaled
  16. 0016exact hscaled