PH0006

beta_horner_eval_empty

The empty polynomial's exact constructive Horner value is zero.

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

Exact theorem in conservative defined notation

∀ b. ∀ c. ∀ t. ∀ n. Horner(b,c,t,0,n) → n = 0

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

Definition DAG

Actual proof prerequisites

beta_at_unique · checked external prerequisite
Original expanded first-order statement
forall b c t n. (exists ff_u_ph_zero ff_v_ph_zero. ((((exists fs_h_ph_zero_body_start. fs_h_ph_zero_body_start + S (0) = S ((S (0)) * ff_v_ph_zero)) /\ exists fs_q_ph_zero_body_start. ff_u_ph_zero = fs_q_ph_zero_body_start * S ((S (0)) * ff_v_ph_zero) + (0))) /\ ((((exists fs_h_ph_zero_body_terminal. fs_h_ph_zero_body_terminal + S (n) = S ((S (0)) * ff_v_ph_zero)) /\ exists fs_q_ph_zero_body_terminal. ff_u_ph_zero = fs_q_ph_zero_body_terminal * S ((S (0)) * ff_v_ph_zero) + (n))) /\ forall ff_i_ph_zero_body_steps. (exists ph_bound_zero_body_steps. ph_bound_zero_body_steps + S ff_i_ph_zero_body_steps = 0) -> exists ff_coefficient_ph_zero_body_steps ff_previous_ph_zero_body_steps ff_current_ph_zero_body_steps. ((((exists fs_h_ph_zero_body_steps_coefficient. fs_h_ph_zero_body_steps_coefficient + S (ff_coefficient_ph_zero_body_steps) = S ((S (ff_i_ph_zero_body_steps)) * c)) /\ exists fs_q_ph_zero_body_steps_coefficient. b = fs_q_ph_zero_body_steps_coefficient * S ((S (ff_i_ph_zero_body_steps)) * c) + (ff_coefficient_ph_zero_body_steps))) /\ ((((exists fs_h_ph_zero_body_steps_before. fs_h_ph_zero_body_steps_before + S (ff_previous_ph_zero_body_steps) = S ((S (ff_i_ph_zero_body_steps)) * ff_v_ph_zero)) /\ exists fs_q_ph_zero_body_steps_before. ff_u_ph_zero = fs_q_ph_zero_body_steps_before * S ((S (ff_i_ph_zero_body_steps)) * ff_v_ph_zero) + (ff_previous_ph_zero_body_steps))) /\ ((((exists fs_h_ph_zero_body_steps_after. fs_h_ph_zero_body_steps_after + S (ff_current_ph_zero_body_steps) = S ((S (S ff_i_ph_zero_body_steps)) * ff_v_ph_zero)) /\ exists fs_q_ph_zero_body_steps_after. ff_u_ph_zero = fs_q_ph_zero_body_steps_after * S ((S (S ff_i_ph_zero_body_steps)) * ff_v_ph_zero) + (ff_current_ph_zero_body_steps))) /\ ff_current_ph_zero_body_steps = ff_previous_ph_zero_body_steps * t + ff_coefficient_ph_zero_body_steps)))))) -> n = 0

Complete unchanged native tactic proof

All 17 lines are the exact independently kernel-checked original script.

Read the argument

Proof checkpoints

17 script commands · 3 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 b
  2. L2
    intro c
  3. L3
    intro t
  4. L4
    intro n
  5. L5
    intro hsum
02Separate the logical casesL6–9

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

  1. L6
    cases hsum
  2. L7
    cases hsum_witness
  3. L8
    cases hsum_witness_witness
  4. L9
    cases hsum_witness_witness_right
03Use earlier factsL10–17

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

  1. L10
    specialize beta_at_unique x
  2. L11
    specialize beta_at_unique x1
  3. L12
    specialize beta_at_unique 0
  4. L13
    specialize beta_at_unique n
  5. L14
    specialize beta_at_unique 0
  6. L15
    apply beta_at_unique
  7. L16
    exact hsum_witness_witness_right_left
  8. L17
    exact hsum_witness_witness_left

Library-wide reading audit

Original defined command ledger · 17 lines
  1. 0001intro b
  2. 0002intro c
  3. 0003intro t
  4. 0004intro n
  5. 0005intro hsum
  6. 0006cases hsum
  7. 0007cases hsum_witness
  8. 0008cases hsum_witness_witness
  9. 0009cases hsum_witness_witness_right
  10. 0010specialize beta_at_unique x
  11. 0011specialize beta_at_unique x1
  12. 0012specialize beta_at_unique 0
  13. 0013specialize beta_at_unique n
  14. 0014specialize beta_at_unique 0
  15. 0015apply beta_at_unique
  16. 0016exact hsum_witness_witness_right_left
  17. 0017exact hsum_witness_witness_left