TS002W · theorem body

prime_divisor_of_prime_forces_equality

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

A prime can divide another prime only when both prime values agree.

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

∀ p. ∀ q. Prime(p)Prime(q)Dvd(p,q) → p = q

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 p q. ((~(p = 1) /\ forall frm_prime_left_ftsp_p frm_prime_right_ftsp_p. p = frm_prime_left_ftsp_p * frm_prime_right_ftsp_p -> frm_prime_left_ftsp_p = 1 \/ frm_prime_right_ftsp_p = 1)) -> ((~(q = 1) /\ forall frm_prime_left_ftsp_q frm_prime_right_ftsp_q. q = frm_prime_left_ftsp_q * frm_prime_right_ftsp_q -> frm_prime_left_ftsp_q = 1 \/ frm_prime_right_ftsp_q = 1)) -> (exists ftcn_factor_ftsp_prime_divides_prime. (q) = (p) * ftcn_factor_ftsp_prime_divides_prime) -> p = q

Proof neighborhood

Direct theorem prerequisites

prime_divisor_eq_one_or_self · Stable closed

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 · 6 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.

Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.

01Fix variables and assumptionsL1–5

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

  1. L1
    intro p
  2. L2
    intro q
  3. L3
    intro hp
  4. L4
    intro hq
  5. L5
    intro hdivides
02Establish hcasesL6–11

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime divisor eq one or self.

  1. L6
    have hcases : p = 1 \/ q = p
  2. L7
    specialize prime_divisor_eq_one_or_self q
  3. L8
    specialize prime_divisor_eq_one_or_self p
  4. L9
    apply prime_divisor_eq_one_or_self
  5. L10
    exact hq
  6. L11
    exact hdivides
03Separate the logical casesL12–14

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

  1. L12
    cases hcases
  2. L13
    exfalso
  3. L14
    cases hp
04Use earlier factsL15–16

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

  1. L15
    apply hp_left
  2. L16
    exact hcases_left
05Calculate and transport equalitiesL17–17

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

  1. L17
    symm
06Use earlier factsL18–18

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

  1. L18
    exact hcases_right

Library-wide reading audit

Original defined command ledger · 18 lines
  1. 0001intro p
  2. 0002intro q
  3. 0003intro hp
  4. 0004intro hq
  5. 0005intro hdivides
  6. 0006have hcases : p = 1 \/ q = p
  7. 0007specialize prime_divisor_eq_one_or_self q
  8. 0008specialize prime_divisor_eq_one_or_self p
  9. 0009apply prime_divisor_eq_one_or_self
  10. 0010exact hq
  11. 0011exact hdivides
  12. 0012cases hcases
  13. 0013exfalso
  14. 0014cases hp
  15. 0015apply hp_left
  16. 0016exact hcases_left
  17. 0017symm
  18. 0018exact hcases_right