KU000A

add_quotient_carry_prefix_restrict

Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable

Dropping the terminal position preserves a three-prefix additive carry code.

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 lb lc rb rc tb tc cb cc l. (forall kmc_index_kmcpr_source. (exists bcf_lt_gap_kmcpr_source_bound. bcf_lt_gap_kmcpr_source_bound + S (kmc_index_kmcpr_source) = S l) -> exists kmc_left_kmcpr_source kmc_right_kmcpr_source kmc_total_kmcpr_source kmc_bit_kmcpr_source. (((exists fs_h_kmcpr_source_left. fs_h_kmcpr_source_left + S (kmc_left_kmcpr_source) = S ((S (kmc_index_kmcpr_source)) * lc)) /\ exists fs_q_kmcpr_source_left. lb = fs_q_kmcpr_source_left * S ((S (kmc_index_kmcpr_source)) * lc) + (kmc_left_kmcpr_source))) /\ ((((exists fs_h_kmcpr_source_right. fs_h_kmcpr_source_right + S (kmc_right_kmcpr_source) = S ((S (kmc_index_kmcpr_source)) * rc)) /\ exists fs_q_kmcpr_source_right. rb = fs_q_kmcpr_source_right * S ((S (kmc_index_kmcpr_source)) * rc) + (kmc_right_kmcpr_source))) /\ ((((exists fs_h_kmcpr_source_total. fs_h_kmcpr_source_total + S (kmc_total_kmcpr_source) = S ((S (kmc_index_kmcpr_source)) * tc)) /\ exists fs_q_kmcpr_source_total. tb = fs_q_kmcpr_source_total * S ((S (kmc_index_kmcpr_source)) * tc) + (kmc_total_kmcpr_source))) /\ ((((exists fs_h_kmcpr_source_bit. fs_h_kmcpr_source_bit + S (kmc_bit_kmcpr_source) = S ((S (kmc_index_kmcpr_source)) * cc)) /\ exists fs_q_kmcpr_source_bit. cb = fs_q_kmcpr_source_bit * S ((S (kmc_index_kmcpr_source)) * cc) + (kmc_bit_kmcpr_source))) /\ (((kmc_bit_kmcpr_source = 0 /\ kmc_total_kmcpr_source = kmc_left_kmcpr_source + kmc_right_kmcpr_source) \/ (kmc_bit_kmcpr_source = 1 /\ kmc_total_kmcpr_source = S (kmc_left_kmcpr_source + kmc_right_kmcpr_source)))))))) -> (forall kmc_index_kmcpr_result. (exists bcf_lt_gap_kmcpr_result_bound. bcf_lt_gap_kmcpr_result_bound + S (kmc_index_kmcpr_result) = l) -> exists kmc_left_kmcpr_result kmc_right_kmcpr_result kmc_total_kmcpr_result kmc_bit_kmcpr_result. (((exists fs_h_kmcpr_result_left. fs_h_kmcpr_result_left + S (kmc_left_kmcpr_result) = S ((S (kmc_index_kmcpr_result)) * lc)) /\ exists fs_q_kmcpr_result_left. lb = fs_q_kmcpr_result_left * S ((S (kmc_index_kmcpr_result)) * lc) + (kmc_left_kmcpr_result))) /\ ((((exists fs_h_kmcpr_result_right. fs_h_kmcpr_result_right + S (kmc_right_kmcpr_result) = S ((S (kmc_index_kmcpr_result)) * rc)) /\ exists fs_q_kmcpr_result_right. rb = fs_q_kmcpr_result_right * S ((S (kmc_index_kmcpr_result)) * rc) + (kmc_right_kmcpr_result))) /\ ((((exists fs_h_kmcpr_result_total. fs_h_kmcpr_result_total + S (kmc_total_kmcpr_result) = S ((S (kmc_index_kmcpr_result)) * tc)) /\ exists fs_q_kmcpr_result_total. tb = fs_q_kmcpr_result_total * S ((S (kmc_index_kmcpr_result)) * tc) + (kmc_total_kmcpr_result))) /\ ((((exists fs_h_kmcpr_result_bit. fs_h_kmcpr_result_bit + S (kmc_bit_kmcpr_result) = S ((S (kmc_index_kmcpr_result)) * cc)) /\ exists fs_q_kmcpr_result_bit. cb = fs_q_kmcpr_result_bit * S ((S (kmc_index_kmcpr_result)) * cc) + (kmc_bit_kmcpr_result))) /\ (((kmc_bit_kmcpr_result = 0 /\ kmc_total_kmcpr_result = kmc_left_kmcpr_result + kmc_right_kmcpr_result) \/ (kmc_bit_kmcpr_result = 1 /\ kmc_total_kmcpr_result = S (kmc_left_kmcpr_result + kmc_right_kmcpr_result))))))))

Constructive proof overview

Generated structural guide

Dropping the terminal position preserves a three-prefix additive carry code.

The unchanged tactic script uses 1 declared prerequisite and contains 18 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

le_succ Stable theorem; checked-use authorized

Direct dependents

Formal native tactic body

Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.

Read the argument

Proof checkpoints

18 script commands · 3 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.

01Fix variables and assumptionsL1–10

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

  1. L1
    intro lb
  2. L2
    intro lc
  3. L3
    intro rb
  4. L4
    intro rc
  5. L5
    intro tb
  6. L6
    intro tc
  7. L7
    intro cb
  8. L8
    intro cc
  9. L9
    intro l
  10. L10
    intro hprefix
02Fix variables and assumptionsL11–12

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

  1. L11
    intro i
  2. L12
    intro hi
03Use earlier factsL13–18

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

  1. L13
    specialize hprefix i
  2. L14
    apply hprefix
  3. L15
    specialize le_succ (S i)
  4. L16
    specialize le_succ l
  5. L17
    apply le_succ
  6. L18
    exact hi

Library-wide reading audit

Original exact command ledger · 18 lines
  1. 0001intro lb
  2. 0002intro lc
  3. 0003intro rb
  4. 0004intro rc
  5. 0005intro tb
  6. 0006intro tc
  7. 0007intro cb
  8. 0008intro cc
  9. 0009intro l
  10. 0010intro hprefix
  11. 0011intro i
  12. 0012intro hi
  13. 0013specialize hprefix i
  14. 0014apply hprefix
  15. 0015specialize le_succ (S i)
  16. 0016specialize le_succ l
  17. 0017apply le_succ
  18. 0018exact hi