HL0026

hensel_prime_signed_nonzero_derivative_is_unit

The ordinary signed nonzero-mod-prime derivative condition constructs the full bounded derivative-unit witness; neither an inverse nor a natural blend is supplied.

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

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.

The derivative-nonzero criterion supplies no inverse or power witness: both are constructed. Roots may be arbitrary natural representatives of signed integer polynomials. Singular-root classification and p-adic completion are separate milestones.

Exact theorem in conservative defined notation

∀ p. ∀ dp. ∀ dn. Prime(p)SignedDerivativeNonzero(p,dp,dn)SignedDerivativeUnit(p,dp,dn)

Every linked abbreviation expands hygienically to the identical original native formula.

Definition DAG

Actual proof prerequisites

prime_nonzero · checked external prerequisitenonzero_is_succ · checked external prerequisitehensel_prime_blended_nonzero_derivative_is_unit
Original expanded first-order statement
forall p dp dn. ((~(p = 1) /\ forall frm_prime_left_hsc_derivative_prime frm_prime_right_hsc_derivative_prime. p = frm_prime_left_hsc_derivative_prime * frm_prime_right_hsc_derivative_prime -> frm_prime_left_hsc_derivative_prime = 1 \/ frm_prime_right_hsc_derivative_prime = 1)) -> (~(exists hgcrt_mod_left_hpl_hsc_derivative_criterion hgcrt_mod_right_hpl_hsc_derivative_criterion. dp + p * hgcrt_mod_left_hpl_hsc_derivative_criterion = dn + p * hgcrt_mod_right_hpl_hsc_derivative_criterion)) -> (exists sph_inverse_hsc_derivative_unit. ((exists hpl_gap_hsc_derivative_unit. hpl_gap_hsc_derivative_unit + S (sph_inverse_hsc_derivative_unit) = (p)) /\ (exists hgcrt_mod_left_hpl_hsc_derivative_unit hgcrt_mod_right_hpl_hsc_derivative_unit. (dp * sph_inverse_hsc_derivative_unit) + p * hgcrt_mod_left_hpl_hsc_derivative_unit = (1 + dn * sph_inverse_hsc_derivative_unit) + p * hgcrt_mod_right_hpl_hsc_derivative_unit)))

Complete tactic proof in conservative notation

All 24 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay script.

Read the argument

Proof checkpoints

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

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

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

  1. L1
    intro p
  2. L2
    intro dp
  3. L3
    intro dn
  4. L4
    intro hp
  5. L5
    intro hnonzero
02Establish hpredecessorL6–13

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply nonzero is succ.

  1. L6
    have hpredecessor : exists h. p = S h
  2. L7
    specialize nonzero_is_succ (p)
  3. L8
    apply nonzero_is_succ
  4. L9
    intro hz
  5. L10
    specialize prime_nonzero (p)
  6. L11
    apply prime_nonzero
  7. L12
    exact hp
  8. L13
    exact hz
03Separate the logical casesL14–14

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

  1. L14
    cases hpredecessor
04Use earlier factsL15–21

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

  1. L15
    specialize hensel_prime_blended_nonzero_derivative_is_unit (p)
  2. L16
    specialize hensel_prime_blended_nonzero_derivative_is_unit (x)
  3. L17
    specialize hensel_prime_blended_nonzero_derivative_is_unit (dp)
  4. L18
    specialize hensel_prime_blended_nonzero_derivative_is_unit (dn)
  5. L19
    specialize hensel_prime_blended_nonzero_derivative_is_unit (dp + x * dn)
  6. L20
    apply hensel_prime_blended_nonzero_derivative_is_unit
  7. L21
    exact hpredecessor_witness
05Calculate and transport equalitiesL22–22

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

  1. L22
    refl
06Use earlier factsL23–24

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

  1. L23
    exact hp
  2. L24
    exact hnonzero

Library-wide reading audit

Original defined command ledger · 24 lines
  1. 0001intro p
  2. 0002intro dp
  3. 0003intro dn
  4. 0004intro hp
  5. 0005intro hnonzero
  6. 0006have hpredecessor : exists h. p = S h
  7. 0007specialize nonzero_is_succ (p)
  8. 0008apply nonzero_is_succ
  9. 0009intro hz
  10. 0010specialize prime_nonzero (p)
  11. 0011apply prime_nonzero
  12. 0012exact hp
  13. 0013exact hz
  14. 0014cases hpredecessor
  15. 0015specialize hensel_prime_blended_nonzero_derivative_is_unit (p)
  16. 0016specialize hensel_prime_blended_nonzero_derivative_is_unit (x)
  17. 0017specialize hensel_prime_blended_nonzero_derivative_is_unit (dp)
  18. 0018specialize hensel_prime_blended_nonzero_derivative_is_unit (dn)
  19. 0019specialize hensel_prime_blended_nonzero_derivative_is_unit (dp + x * dn)
  20. 0020apply hensel_prime_blended_nonzero_derivative_is_unit
  21. 0021exact hpredecessor_witness
  22. 0022refl
  23. 0023exact hp
  24. 0024exact hnonzero