CR0016

crt_prefix_ordered_solutions_gap_multiple

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

For every finite list, the directed gap between two solutions is divisible by its universal-property lcm.

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 r s b c l M x y k. (((forall gcrt_common_index_gap_lcm_own gcrt_common_modulus_gap_lcm_own. (exists ff_lt_gcrt_gap_lcm_own_bound. ff_lt_gcrt_gap_lcm_own_bound + S gcrt_common_index_gap_lcm_own = l) -> (((exists ff_h_gcrt_gap_lcm_own_entry. ff_h_gcrt_gap_lcm_own_entry + S (gcrt_common_modulus_gap_lcm_own) = S ((S (gcrt_common_index_gap_lcm_own)) * c)) /\ exists ff_q_gcrt_gap_lcm_own_entry. b = ff_q_gcrt_gap_lcm_own_entry * S ((S (gcrt_common_index_gap_lcm_own)) * c) + (gcrt_common_modulus_gap_lcm_own))) -> exists gcrt_common_quotient_gap_lcm_own. M = gcrt_common_modulus_gap_lcm_own * gcrt_common_quotient_gap_lcm_own) /\ forall gcrt_lcm_common_gap_lcm. (forall gcrt_common_index_gap_lcm_other gcrt_common_modulus_gap_lcm_other. (exists ff_lt_gcrt_gap_lcm_other_bound. ff_lt_gcrt_gap_lcm_other_bound + S gcrt_common_index_gap_lcm_other = l) -> (((exists ff_h_gcrt_gap_lcm_other_entry. ff_h_gcrt_gap_lcm_other_entry + S (gcrt_common_modulus_gap_lcm_other) = S ((S (gcrt_common_index_gap_lcm_other)) * c)) /\ exists ff_q_gcrt_gap_lcm_other_entry. b = ff_q_gcrt_gap_lcm_other_entry * S ((S (gcrt_common_index_gap_lcm_other)) * c) + (gcrt_common_modulus_gap_lcm_other))) -> exists gcrt_common_quotient_gap_lcm_other. gcrt_lcm_common_gap_lcm = gcrt_common_modulus_gap_lcm_other * gcrt_common_quotient_gap_lcm_other) -> exists gcrt_lcm_quotient_gap_lcm. gcrt_lcm_common_gap_lcm = M * gcrt_lcm_quotient_gap_lcm)) -> (forall gcrt_solution_index_gap_solution_left gcrt_solution_residue_gap_solution_left gcrt_solution_modulus_gap_solution_left. (exists ff_lt_gcrt_gap_solution_left_bound. ff_lt_gcrt_gap_solution_left_bound + S gcrt_solution_index_gap_solution_left = l) -> (((exists ff_h_gcrt_gap_solution_left_residue. ff_h_gcrt_gap_solution_left_residue + S (gcrt_solution_residue_gap_solution_left) = S ((S (gcrt_solution_index_gap_solution_left)) * s)) /\ exists ff_q_gcrt_gap_solution_left_residue. r = ff_q_gcrt_gap_solution_left_residue * S ((S (gcrt_solution_index_gap_solution_left)) * s) + (gcrt_solution_residue_gap_solution_left))) -> (((exists ff_h_gcrt_gap_solution_left_modulus. ff_h_gcrt_gap_solution_left_modulus + S (gcrt_solution_modulus_gap_solution_left) = S ((S (gcrt_solution_index_gap_solution_left)) * c)) /\ exists ff_q_gcrt_gap_solution_left_modulus. b = ff_q_gcrt_gap_solution_left_modulus * S ((S (gcrt_solution_index_gap_solution_left)) * c) + (gcrt_solution_modulus_gap_solution_left))) -> (exists hgcrt_mod_left_gcrt_gap_solution_left_congruence hgcrt_mod_right_gcrt_gap_solution_left_congruence. x + gcrt_solution_modulus_gap_solution_left * hgcrt_mod_left_gcrt_gap_solution_left_congruence = gcrt_solution_residue_gap_solution_left + gcrt_solution_modulus_gap_solution_left * hgcrt_mod_right_gcrt_gap_solution_left_congruence)) -> (forall gcrt_solution_index_gap_solution_right gcrt_solution_residue_gap_solution_right gcrt_solution_modulus_gap_solution_right. (exists ff_lt_gcrt_gap_solution_right_bound. ff_lt_gcrt_gap_solution_right_bound + S gcrt_solution_index_gap_solution_right = l) -> (((exists ff_h_gcrt_gap_solution_right_residue. ff_h_gcrt_gap_solution_right_residue + S (gcrt_solution_residue_gap_solution_right) = S ((S (gcrt_solution_index_gap_solution_right)) * s)) /\ exists ff_q_gcrt_gap_solution_right_residue. r = ff_q_gcrt_gap_solution_right_residue * S ((S (gcrt_solution_index_gap_solution_right)) * s) + (gcrt_solution_residue_gap_solution_right))) -> (((exists ff_h_gcrt_gap_solution_right_modulus. ff_h_gcrt_gap_solution_right_modulus + S (gcrt_solution_modulus_gap_solution_right) = S ((S (gcrt_solution_index_gap_solution_right)) * c)) /\ exists ff_q_gcrt_gap_solution_right_modulus. b = ff_q_gcrt_gap_solution_right_modulus * S ((S (gcrt_solution_index_gap_solution_right)) * c) + (gcrt_solution_modulus_gap_solution_right))) -> (exists hgcrt_mod_left_gcrt_gap_solution_right_congruence hgcrt_mod_right_gcrt_gap_solution_right_congruence. y + gcrt_solution_modulus_gap_solution_right * hgcrt_mod_left_gcrt_gap_solution_right_congruence = gcrt_solution_residue_gap_solution_right + gcrt_solution_modulus_gap_solution_right * hgcrt_mod_right_gcrt_gap_solution_right_congruence)) -> k + x = y -> exists q. k = M * q

Constructive proof overview

Generated structural guide

For every finite list, the directed gap between two solutions is divisible by its universal-property lcm.

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

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

Proof neighborhood

Direct dependencies

beta_at_exists Stable theorem; checked-use authorized CR0014 crt_prefix_solutions_pointwise_congruent mod_eq_ordered_gap_multiple 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

48 script commands · 10 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 r
  2. L2
    intro s
  3. L3
    intro b
  4. L4
    intro c
  5. L5
    intro l
  6. L6
    intro M
  7. L7
    intro x
  8. L8
    intro y
  9. L9
    intro k
  10. L10
    intro hlcm
02Fix variables and assumptionsL11–13

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

  1. L11
    intro hx
  2. L12
    intro hy
  3. L13
    intro hgap
03Separate the logical casesL14–14

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

  1. L14
    cases hlcm
04Use earlier factsL15–16

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

  1. L15
    specialize hlcm_right k
  2. L16
    apply hlcm_right
05Fix variables and assumptionsL17–20

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

  1. L17
    intro i
  2. L18
    intro m
  3. L19
    intro hi
  4. L20
    intro hm
06Establish hresidueL21–25

Establish this local claim before using it. It is not an additional assumption.

  1. L21
    have hresidue : exists a. (((exists ff_h_gcrt_gap_decoded_residue. ff_h_gcrt_gap_decoded_residue + S (a) = S ((S (i)) * s)) /\ exists ff_q_gcrt_gap_decoded_residue. r = ff_q_gcrt_gap_decoded_residue * S ((S (i)) * s) + (a)))
  2. L22
    specialize beta_at_exists r
  3. L23
    specialize beta_at_exists s
  4. L24
    specialize beta_at_exists i
  5. L25
    exact beta_at_exists
07Separate the logical casesL26–26

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

  1. L26
    cases hresidue
08Use earlier factsL27–36

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

  1. L27
    specialize mod_eq_ordered_gap_multiple m
  2. L28
    specialize mod_eq_ordered_gap_multiple k
  3. L29
    specialize mod_eq_ordered_gap_multiple x
  4. L30
    specialize mod_eq_ordered_gap_multiple y
  5. L31
    apply mod_eq_ordered_gap_multiple
  6. L32
    exact hgap
  7. L33
    specialize crt_prefix_solutions_pointwise_congruent r
  8. L34
    specialize crt_prefix_solutions_pointwise_congruent s
  9. L35
    specialize crt_prefix_solutions_pointwise_congruent b
  10. L36
    specialize crt_prefix_solutions_pointwise_congruent c
09Use earlier factsL37–46

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

  1. L37
    specialize crt_prefix_solutions_pointwise_congruent l
  2. L38
    specialize crt_prefix_solutions_pointwise_congruent x
  3. L39
    specialize crt_prefix_solutions_pointwise_congruent y
  4. L40
    specialize crt_prefix_solutions_pointwise_congruent i
  5. L41
    specialize crt_prefix_solutions_pointwise_congruent x1
  6. L42
    specialize crt_prefix_solutions_pointwise_congruent m
  7. L43
    apply crt_prefix_solutions_pointwise_congruent
  8. L44
    exact hx
  9. L45
    exact hy
  10. L46
    exact hi
10Use earlier factsL47–48

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

  1. L47
    exact hresidue_witness
  2. L48
    exact hm

Library-wide reading audit

Original exact command ledger · 48 lines
  1. 0001intro r
  2. 0002intro s
  3. 0003intro b
  4. 0004intro c
  5. 0005intro l
  6. 0006intro M
  7. 0007intro x
  8. 0008intro y
  9. 0009intro k
  10. 0010intro hlcm
  11. 0011intro hx
  12. 0012intro hy
  13. 0013intro hgap
  14. 0014cases hlcm
  15. 0015specialize hlcm_right k
  16. 0016apply hlcm_right
  17. 0017intro i
  18. 0018intro m
  19. 0019intro hi
  20. 0020intro hm
  21. 0021have hresidue : exists a. (((exists ff_h_gcrt_gap_decoded_residue. ff_h_gcrt_gap_decoded_residue + S (a) = S ((S (i)) * s)) /\ exists ff_q_gcrt_gap_decoded_residue. r = ff_q_gcrt_gap_decoded_residue * S ((S (i)) * s) + (a)))
  22. 0022specialize beta_at_exists r
  23. 0023specialize beta_at_exists s
  24. 0024specialize beta_at_exists i
  25. 0025exact beta_at_exists
  26. 0026cases hresidue
  27. 0027specialize mod_eq_ordered_gap_multiple m
  28. 0028specialize mod_eq_ordered_gap_multiple k
  29. 0029specialize mod_eq_ordered_gap_multiple x
  30. 0030specialize mod_eq_ordered_gap_multiple y
  31. 0031apply mod_eq_ordered_gap_multiple
  32. 0032exact hgap
  33. 0033specialize crt_prefix_solutions_pointwise_congruent r
  34. 0034specialize crt_prefix_solutions_pointwise_congruent s
  35. 0035specialize crt_prefix_solutions_pointwise_congruent b
  36. 0036specialize crt_prefix_solutions_pointwise_congruent c
  37. 0037specialize crt_prefix_solutions_pointwise_congruent l
  38. 0038specialize crt_prefix_solutions_pointwise_congruent x
  39. 0039specialize crt_prefix_solutions_pointwise_congruent y
  40. 0040specialize crt_prefix_solutions_pointwise_congruent i
  41. 0041specialize crt_prefix_solutions_pointwise_congruent x1
  42. 0042specialize crt_prefix_solutions_pointwise_congruent m
  43. 0043apply crt_prefix_solutions_pointwise_congruent
  44. 0044exact hx
  45. 0045exact hy
  46. 0046exact hi
  47. 0047exact hresidue_witness
  48. 0048exact hm

Separate complete second-wave branches: Full G011 proof · Alpha v27.