TS0023 · theorem body

negative_one_norm_multiple_yields_predecessor_residue

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

If a successor divides r²+1, its predecessor is constructively a quadratic residue.

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. ∀ n. ∀ r. p = S n → Dvd(p,r · r + 1)QRes(p,n)

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 n r. p = S n -> (exists ftcn_factor_ftsc_root_norm. (r * r + 1) = (p) * ftcn_factor_ftsc_root_norm) -> (exists qr_x_ftsc_predecessor. exists qr_u_ftsc_predecessor qr_v_ftsc_predecessor. qr_x_ftsc_predecessor * qr_x_ftsc_predecessor + p * qr_u_ftsc_predecessor = n + p * qr_v_ftsc_predecessor)

Proof neighborhood

Direct theorem prerequisites

mul_one · Stable closed add_assoc · Stable closed add_comm · Stable closed zero_add · Stable closed add_succ_left · 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

14 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.

01Fix variables and assumptionsL1–5

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

  1. L1
    intro p
  2. L2
    intro n
  3. L3
    intro r
  4. L4
    intro hpredecessor
  5. L5
    intro hmultiple
02Separate the logical casesL6–6

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

  1. L6
    cases hmultiple
03Construct an explicit witnessL7–9

Supply the displayed value, then prove that it has the required property.

  1. L7
    exists r
  2. L8
    exists 1
  3. L9
    exists x
04Calculate and transport equalitiesL10–13

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

  1. L10
    trans (r * r + 1) + n
  2. L11
    rewrite hpredecessor
  3. L12
    simp [mul_one, add_assoc, add_comm, zero_add, add_succ_left]
  4. L13
    rewrite hmultiple_witness
05Use earlier factsL14–14

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

  1. L14
    apply add_comm

Library-wide reading audit

Original defined command ledger · 14 lines
  1. 0001intro p
  2. 0002intro n
  3. 0003intro r
  4. 0004intro hpredecessor
  5. 0005intro hmultiple
  6. 0006cases hmultiple
  7. 0007exists r
  8. 0008exists 1
  9. 0009exists x
  10. 0010trans (r * r + 1) + n
  11. 0011rewrite hpredecessor
  12. 0012simp [mul_one, add_assoc, add_comm, zero_add, add_succ_left]
  13. 0013rewrite hmultiple_witness
  14. 0014apply add_comm