TS000N · theorem body

finite_bounded_into_collision_from_constructive_decision

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

Once collision-versus-injectivity is constructively decided, oversized bounded maps yield an actual collision witness.

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.

Statement with defined notation

∀ b. ∀ c. ∀ l. ∀ n. (∀ x. Lt(x,l) → ∃ y. BetaAt(b,c,x,y)Lt(y,n)) → Lt(n,l) → (∃ x. ∃ y. ∃ z. Lt(x,l) ∧ (Lt(y,l) ∧ (¬x = y ∧ (BetaAt(b,c,x,z)BetaAt(b,c,y,z))))) ∨ InjectivePrefix(b,c,l) → ∃ x. ∃ y. ∃ z. Lt(x,l) ∧ (Lt(y,l) ∧ (¬x = y ∧ (BetaAt(b,c,x,z)BetaAt(b,c,y,z))))

Every purple notation token opens its conservative definition. This reading surface never changes the unchanged intuitionistic kernel or confers checked-use authority.

Definitions used by this theorem

In the theorem statement

In local proof propositions

none
Exact expanded first-order statement
forall b c l n. (forall fom_index_ftsp_full_bounded. (exists fom_gap_ftsp_full_bounded_index_bound. fom_gap_ftsp_full_bounded_index_bound + S (fom_index_ftsp_full_bounded) = l) -> exists fom_value_ftsp_full_bounded. ((((exists fom_beta_height_ftsp_full_bounded_entry. fom_beta_height_ftsp_full_bounded_entry + S (fom_value_ftsp_full_bounded) = S ((S (fom_index_ftsp_full_bounded)) * c)) /\ exists fom_beta_quotient_ftsp_full_bounded_entry. b = fom_beta_quotient_ftsp_full_bounded_entry * S ((S (fom_index_ftsp_full_bounded)) * c) + (fom_value_ftsp_full_bounded))) /\ (exists fom_gap_ftsp_full_bounded_value_bound. fom_gap_ftsp_full_bounded_value_bound + S (fom_value_ftsp_full_bounded) = n))) -> (exists ftsp_gap_collision_overflow. ftsp_gap_collision_overflow + S (n) = l) -> ((exists ftsp_first_general ftsp_second_general ftsp_value_general. ((exists ftsp_gap_general_first. ftsp_gap_general_first + S (ftsp_first_general) = l) /\ ((exists ftsp_gap_general_second. ftsp_gap_general_second + S (ftsp_second_general) = l) /\ (~(ftsp_first_general = ftsp_second_general) /\ ((((exists ff_h_ftsp_general_left. ff_h_ftsp_general_left + S (ftsp_value_general) = S ((S (ftsp_first_general)) * c)) /\ exists ff_q_ftsp_general_left. b = ff_q_ftsp_general_left * S ((S (ftsp_first_general)) * c) + (ftsp_value_general))) /\ (((exists ff_h_ftsp_general_right. ff_h_ftsp_general_right + S (ftsp_value_general) = S ((S (ftsp_second_general)) * c)) /\ exists ff_q_ftsp_general_right. b = ff_q_ftsp_general_right * S ((S (ftsp_second_general)) * c) + (ftsp_value_general)))))))) \/ (forall fp_i_ftsp_full_injective fp_j_ftsp_full_injective fp_value_ftsp_full_injective. (exists fp_gap_ftsp_full_injective_i. fp_gap_ftsp_full_injective_i + S fp_i_ftsp_full_injective = l) -> (exists fp_gap_ftsp_full_injective_j. fp_gap_ftsp_full_injective_j + S fp_j_ftsp_full_injective = l) -> (((exists ff_h_ftsp_full_injective_left. ff_h_ftsp_full_injective_left + S (fp_value_ftsp_full_injective) = S ((S (fp_i_ftsp_full_injective)) * c)) /\ exists ff_q_ftsp_full_injective_left. b = ff_q_ftsp_full_injective_left * S ((S (fp_i_ftsp_full_injective)) * c) + (fp_value_ftsp_full_injective))) -> (((exists ff_h_ftsp_full_injective_right. ff_h_ftsp_full_injective_right + S (fp_value_ftsp_full_injective) = S ((S (fp_j_ftsp_full_injective)) * c)) /\ exists ff_q_ftsp_full_injective_right. b = ff_q_ftsp_full_injective_right * S ((S (fp_j_ftsp_full_injective)) * c) + (fp_value_ftsp_full_injective))) -> fp_i_ftsp_full_injective = fp_j_ftsp_full_injective)) -> (exists ftsp_first_general ftsp_second_general ftsp_value_general. ((exists ftsp_gap_general_first. ftsp_gap_general_first + S (ftsp_first_general) = l) /\ ((exists ftsp_gap_general_second. ftsp_gap_general_second + S (ftsp_second_general) = l) /\ (~(ftsp_first_general = ftsp_second_general) /\ ((((exists ff_h_ftsp_general_left. ff_h_ftsp_general_left + S (ftsp_value_general) = S ((S (ftsp_first_general)) * c)) /\ exists ff_q_ftsp_general_left. b = ff_q_ftsp_general_left * S ((S (ftsp_first_general)) * c) + (ftsp_value_general))) /\ (((exists ff_h_ftsp_general_right. ff_h_ftsp_general_right + S (ftsp_value_general) = S ((S (ftsp_second_general)) * c)) /\ exists ff_q_ftsp_general_right. b = ff_q_ftsp_general_right * S ((S (ftsp_second_general)) * c) + (ftsp_value_general))))))))

Proof neighborhood

Direct theorem prerequisites

Direct theorem dependents

Definition-aware tactic body

Only propositions whose conservative expansion has been checked for exact first-order equivalence are compacted. Every changed line retains its immutable exact replay command.

Read the argument

Proof checkpoints

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

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

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

  1. L1
    intro b
  2. L2
    intro c
  3. L3
    intro l
  4. L4
    intro n
  5. L5
    intro hbounded
  6. L6
    intro hoverflow
  7. L7
    intro hdecision
02Separate the logical casesL8–8

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

  1. L8
    cases hdecision
03Use earlier factsL9–9

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

  1. L9
    exact hdecision_left
04Separate the logical casesL10–10

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

  1. L10
    exfalso
05Use earlier factsL11–18

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

  1. L11
    specialize finite_bounded_into_oversized_not_injective b
  2. L12
    specialize finite_bounded_into_oversized_not_injective c
  3. L13
    specialize finite_bounded_into_oversized_not_injective l
  4. L14
    specialize finite_bounded_into_oversized_not_injective n
  5. L15
    apply finite_bounded_into_oversized_not_injective
  6. L16
    exact hbounded
  7. L17
    exact hoverflow
  8. L18
    exact hdecision_right

Library-wide reading audit

Original defined command ledger · 18 lines
  1. 0001intro b
  2. 0002intro c
  3. 0003intro l
  4. 0004intro n
  5. 0005intro hbounded
  6. 0006intro hoverflow
  7. 0007intro hdecision
  8. 0008cases hdecision
  9. 0009exact hdecision_left
  10. 0010exfalso
  11. 0011specialize finite_bounded_into_oversized_not_injective b
  12. 0012specialize finite_bounded_into_oversized_not_injective c
  13. 0013specialize finite_bounded_into_oversized_not_injective l
  14. 0014specialize finite_bounded_into_oversized_not_injective n
  15. 0015apply finite_bounded_into_oversized_not_injective
  16. 0016exact hbounded
  17. 0017exact hoverflow
  18. 0018exact hdecision_right