EL0017

lte_prime_self_valuation

Construct the actual bounded maximal valuation graph Val(p,p,1) for an actual prime.

Alpha v34 checked-use · first admitted v29 · 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.

All displayed hypotheses are required. Powers and positive differences are actual existential outputs. The proof constructs second-order correction identities and iterates the prime step; no binomial expansion or LTE oracle is assumed. The 2-adic variants remain separate open targets.

Exact theorem in conservative defined notation

∀ p. ¬p = 1 ∧ (∀ x. ∀ y. p = x · y → x = 1 ∨ y = 1) → BoundedPowerValuation(p,p,p,1)

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

Definition DAG

Actual proof prerequisites

Original expanded first-order statement
forall p. (~((p) = 1) /\ forall pvs_left_self_construct_prime pvs_right_self_construct_prime. (p) = pvs_left_self_construct_prime * pvs_right_self_construct_prime -> pvs_left_self_construct_prime = 1 \/ pvs_right_self_construct_prime = 1) -> (((exists bpd_gap_pvs_self_construct_result_selected_bound. bpd_gap_pvs_self_construct_result_selected_bound + (1) = (p)) /\ (exists bpvi_result_pvs_self_construct_result_selected. ((exists bpvi_b_pvs_self_construct_result_selected_power bpvi_c_pvs_self_construct_result_selected_power. ((forall bpvi_i_pvs_self_construct_result_selected_power. (exists bpvi_repeat_gap_pvs_self_construct_result_selected_power. bpvi_repeat_gap_pvs_self_construct_result_selected_power + S bpvi_i_pvs_self_construct_result_selected_power = 1) -> (((exists bpvi_h_pvs_self_construct_result_selected_power_repeat. bpvi_h_pvs_self_construct_result_selected_power_repeat + S (p) = S ((S (bpvi_i_pvs_self_construct_result_selected_power)) * bpvi_c_pvs_self_construct_result_selected_power)) /\ exists bpvi_q_pvs_self_construct_result_selected_power_repeat. bpvi_b_pvs_self_construct_result_selected_power = bpvi_q_pvs_self_construct_result_selected_power_repeat * S ((S (bpvi_i_pvs_self_construct_result_selected_power)) * bpvi_c_pvs_self_construct_result_selected_power) + (p)))) /\ (exists bpvi_u_pvs_self_construct_result_selected_power bpvi_v_pvs_self_construct_result_selected_power. ((((exists bpvi_h_pvs_self_construct_result_selected_power_start. bpvi_h_pvs_self_construct_result_selected_power_start + S (1) = S ((S (0)) * bpvi_v_pvs_self_construct_result_selected_power)) /\ exists bpvi_q_pvs_self_construct_result_selected_power_start. bpvi_u_pvs_self_construct_result_selected_power = bpvi_q_pvs_self_construct_result_selected_power_start * S ((S (0)) * bpvi_v_pvs_self_construct_result_selected_power) + (1))) /\ ((((exists bpvi_h_pvs_self_construct_result_selected_power_terminal. bpvi_h_pvs_self_construct_result_selected_power_terminal + S (bpvi_result_pvs_self_construct_result_selected) = S ((S (1)) * bpvi_v_pvs_self_construct_result_selected_power)) /\ exists bpvi_q_pvs_self_construct_result_selected_power_terminal. bpvi_u_pvs_self_construct_result_selected_power = bpvi_q_pvs_self_construct_result_selected_power_terminal * S ((S (1)) * bpvi_v_pvs_self_construct_result_selected_power) + (bpvi_result_pvs_self_construct_result_selected))) /\ forall bpvi_j_pvs_self_construct_result_selected_power. (exists bpvi_product_gap_pvs_self_construct_result_selected_power. bpvi_product_gap_pvs_self_construct_result_selected_power + S bpvi_j_pvs_self_construct_result_selected_power = 1) -> exists bpvi_factor_pvs_self_construct_result_selected_power bpvi_partial_pvs_self_construct_result_selected_power bpvi_successor_pvs_self_construct_result_selected_power. ((((exists bpvi_h_pvs_self_construct_result_selected_power_factor. bpvi_h_pvs_self_construct_result_selected_power_factor + S (bpvi_factor_pvs_self_construct_result_selected_power) = S ((S (bpvi_j_pvs_self_construct_result_selected_power)) * bpvi_c_pvs_self_construct_result_selected_power)) /\ exists bpvi_q_pvs_self_construct_result_selected_power_factor. bpvi_b_pvs_self_construct_result_selected_power = bpvi_q_pvs_self_construct_result_selected_power_factor * S ((S (bpvi_j_pvs_self_construct_result_selected_power)) * bpvi_c_pvs_self_construct_result_selected_power) + (bpvi_factor_pvs_self_construct_result_selected_power))) /\ ((((exists bpvi_h_pvs_self_construct_result_selected_power_partial. bpvi_h_pvs_self_construct_result_selected_power_partial + S (bpvi_partial_pvs_self_construct_result_selected_power) = S ((S (bpvi_j_pvs_self_construct_result_selected_power)) * bpvi_v_pvs_self_construct_result_selected_power)) /\ exists bpvi_q_pvs_self_construct_result_selected_power_partial. bpvi_u_pvs_self_construct_result_selected_power = bpvi_q_pvs_self_construct_result_selected_power_partial * S ((S (bpvi_j_pvs_self_construct_result_selected_power)) * bpvi_v_pvs_self_construct_result_selected_power) + (bpvi_partial_pvs_self_construct_result_selected_power))) /\ ((((exists bpvi_h_pvs_self_construct_result_selected_power_successor. bpvi_h_pvs_self_construct_result_selected_power_successor + S (bpvi_successor_pvs_self_construct_result_selected_power) = S ((S (S bpvi_j_pvs_self_construct_result_selected_power)) * bpvi_v_pvs_self_construct_result_selected_power)) /\ exists bpvi_q_pvs_self_construct_result_selected_power_successor. bpvi_u_pvs_self_construct_result_selected_power = bpvi_q_pvs_self_construct_result_selected_power_successor * S ((S (S bpvi_j_pvs_self_construct_result_selected_power)) * bpvi_v_pvs_self_construct_result_selected_power) + (bpvi_successor_pvs_self_construct_result_selected_power))) /\ bpvi_successor_pvs_self_construct_result_selected_power = bpvi_partial_pvs_self_construct_result_selected_power * bpvi_factor_pvs_self_construct_result_selected_power)))))))) /\ exists bpvi_divisor_factor_pvs_self_construct_result_selected. p = bpvi_result_pvs_self_construct_result_selected * bpvi_divisor_factor_pvs_self_construct_result_selected))) /\ forall bpd_candidate_pvs_self_construct_result. (exists bpd_gap_pvs_self_construct_result_candidate_bound. bpd_gap_pvs_self_construct_result_candidate_bound + (bpd_candidate_pvs_self_construct_result) = (p)) -> (exists bpvi_result_pvs_self_construct_result_candidate. ((exists bpvi_b_pvs_self_construct_result_candidate_power bpvi_c_pvs_self_construct_result_candidate_power. ((forall bpvi_i_pvs_self_construct_result_candidate_power. (exists bpvi_repeat_gap_pvs_self_construct_result_candidate_power. bpvi_repeat_gap_pvs_self_construct_result_candidate_power + S bpvi_i_pvs_self_construct_result_candidate_power = bpd_candidate_pvs_self_construct_result) -> (((exists bpvi_h_pvs_self_construct_result_candidate_power_repeat. bpvi_h_pvs_self_construct_result_candidate_power_repeat + S (p) = S ((S (bpvi_i_pvs_self_construct_result_candidate_power)) * bpvi_c_pvs_self_construct_result_candidate_power)) /\ exists bpvi_q_pvs_self_construct_result_candidate_power_repeat. bpvi_b_pvs_self_construct_result_candidate_power = bpvi_q_pvs_self_construct_result_candidate_power_repeat * S ((S (bpvi_i_pvs_self_construct_result_candidate_power)) * bpvi_c_pvs_self_construct_result_candidate_power) + (p)))) /\ (exists bpvi_u_pvs_self_construct_result_candidate_power bpvi_v_pvs_self_construct_result_candidate_power. ((((exists bpvi_h_pvs_self_construct_result_candidate_power_start. bpvi_h_pvs_self_construct_result_candidate_power_start + S (1) = S ((S (0)) * bpvi_v_pvs_self_construct_result_candidate_power)) /\ exists bpvi_q_pvs_self_construct_result_candidate_power_start. bpvi_u_pvs_self_construct_result_candidate_power = bpvi_q_pvs_self_construct_result_candidate_power_start * S ((S (0)) * bpvi_v_pvs_self_construct_result_candidate_power) + (1))) /\ ((((exists bpvi_h_pvs_self_construct_result_candidate_power_terminal. bpvi_h_pvs_self_construct_result_candidate_power_terminal + S (bpvi_result_pvs_self_construct_result_candidate) = S ((S (bpd_candidate_pvs_self_construct_result)) * bpvi_v_pvs_self_construct_result_candidate_power)) /\ exists bpvi_q_pvs_self_construct_result_candidate_power_terminal. bpvi_u_pvs_self_construct_result_candidate_power = bpvi_q_pvs_self_construct_result_candidate_power_terminal * S ((S (bpd_candidate_pvs_self_construct_result)) * bpvi_v_pvs_self_construct_result_candidate_power) + (bpvi_result_pvs_self_construct_result_candidate))) /\ forall bpvi_j_pvs_self_construct_result_candidate_power. (exists bpvi_product_gap_pvs_self_construct_result_candidate_power. bpvi_product_gap_pvs_self_construct_result_candidate_power + S bpvi_j_pvs_self_construct_result_candidate_power = bpd_candidate_pvs_self_construct_result) -> exists bpvi_factor_pvs_self_construct_result_candidate_power bpvi_partial_pvs_self_construct_result_candidate_power bpvi_successor_pvs_self_construct_result_candidate_power. ((((exists bpvi_h_pvs_self_construct_result_candidate_power_factor. bpvi_h_pvs_self_construct_result_candidate_power_factor + S (bpvi_factor_pvs_self_construct_result_candidate_power) = S ((S (bpvi_j_pvs_self_construct_result_candidate_power)) * bpvi_c_pvs_self_construct_result_candidate_power)) /\ exists bpvi_q_pvs_self_construct_result_candidate_power_factor. bpvi_b_pvs_self_construct_result_candidate_power = bpvi_q_pvs_self_construct_result_candidate_power_factor * S ((S (bpvi_j_pvs_self_construct_result_candidate_power)) * bpvi_c_pvs_self_construct_result_candidate_power) + (bpvi_factor_pvs_self_construct_result_candidate_power))) /\ ((((exists bpvi_h_pvs_self_construct_result_candidate_power_partial. bpvi_h_pvs_self_construct_result_candidate_power_partial + S (bpvi_partial_pvs_self_construct_result_candidate_power) = S ((S (bpvi_j_pvs_self_construct_result_candidate_power)) * bpvi_v_pvs_self_construct_result_candidate_power)) /\ exists bpvi_q_pvs_self_construct_result_candidate_power_partial. bpvi_u_pvs_self_construct_result_candidate_power = bpvi_q_pvs_self_construct_result_candidate_power_partial * S ((S (bpvi_j_pvs_self_construct_result_candidate_power)) * bpvi_v_pvs_self_construct_result_candidate_power) + (bpvi_partial_pvs_self_construct_result_candidate_power))) /\ ((((exists bpvi_h_pvs_self_construct_result_candidate_power_successor. bpvi_h_pvs_self_construct_result_candidate_power_successor + S (bpvi_successor_pvs_self_construct_result_candidate_power) = S ((S (S bpvi_j_pvs_self_construct_result_candidate_power)) * bpvi_v_pvs_self_construct_result_candidate_power)) /\ exists bpvi_q_pvs_self_construct_result_candidate_power_successor. bpvi_u_pvs_self_construct_result_candidate_power = bpvi_q_pvs_self_construct_result_candidate_power_successor * S ((S (S bpvi_j_pvs_self_construct_result_candidate_power)) * bpvi_v_pvs_self_construct_result_candidate_power) + (bpvi_successor_pvs_self_construct_result_candidate_power))) /\ bpvi_successor_pvs_self_construct_result_candidate_power = bpvi_partial_pvs_self_construct_result_candidate_power * bpvi_factor_pvs_self_construct_result_candidate_power)))))))) /\ exists bpvi_divisor_factor_pvs_self_construct_result_candidate. p = bpvi_result_pvs_self_construct_result_candidate * bpvi_divisor_factor_pvs_self_construct_result_candidate)) -> (exists bpd_gap_pvs_self_construct_result_maximal. bpd_gap_pvs_self_construct_result_maximal + (bpd_candidate_pvs_self_construct_result) = (1)))

Complete tactic proof in conservative notation

All 18 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

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

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

  1. L1
    intro p
  2. L2
    intro hp
02Establish hexL3–6

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply power valuation exists.

  1. L3
    have hex : ∃ e. BoundedPowerValuation(p,p,p,e)Definitions: BoundedPowerValuation(p,p,p,e)Original native command in the exact edition
  2. L4
    specialize power_valuation_exists (p)
  3. L5
    specialize power_valuation_exists (p)
  4. L6
    apply power_valuation_exists
03Separate the logical casesL7–7

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

  1. L7
    cases hex
04Use earlier factsL8–17

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

  1. L8
    specialize prime_valuation_exponent_eq_transport (p)
  2. L9
    specialize prime_valuation_exponent_eq_transport (p)
  3. L10
    specialize prime_valuation_exponent_eq_transport (x)
  4. L11
    specialize prime_valuation_exponent_eq_transport (1)
  5. L12
    apply prime_valuation_exponent_eq_transport
  6. L13
    specialize lte_prime_self_valuation_value (p)
  7. L14
    specialize lte_prime_self_valuation_value (x)
  8. L15
    apply lte_prime_self_valuation_value
  9. L16
    exact hp
  10. L17
    exact hex_witness
05Use earlier factsL18–18

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

  1. L18
    exact hex_witness

Library-wide reading audit

Original defined command ledger · 18 lines
  1. 0001intro p
  2. 0002intro hp
  3. 0003have hex : ∃ e. BoundedPowerValuation(p,p,p,e)
  4. 0004specialize power_valuation_exists (p)
  5. 0005specialize power_valuation_exists (p)
  6. 0006apply power_valuation_exists
  7. 0007cases hex
  8. 0008specialize prime_valuation_exponent_eq_transport (p)
  9. 0009specialize prime_valuation_exponent_eq_transport (p)
  10. 0010specialize prime_valuation_exponent_eq_transport (x)
  11. 0011specialize prime_valuation_exponent_eq_transport (1)
  12. 0012apply prime_valuation_exponent_eq_transport
  13. 0013specialize lte_prime_self_valuation_value (p)
  14. 0014specialize lte_prime_self_valuation_value (x)
  15. 0015apply lte_prime_self_valuation_value
  16. 0016exact hp
  17. 0017exact hex_witness
  18. 0018exact hex_witness