BT00Q6 · Bertrand theorem

bounded_power_valuation_exists

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

Every explicit exponent bound has a greatest power-divisor exponent.

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. ∀ a. ∀ B. ∃ e. BoundedPowerValuation(p,a,B,e)

Every purple notation token opens its conservative definition. Expanding the displayed statement recovers the exact first-order Peano-arithmetic formula checked by the unchanged kernel.

Definitions used by this theorem

In the theorem statement

1 occurrences

In local proof propositions

4 occurrences

Exact expanded native-PA statement
forall p a B. exists e. (((exists bpv_gap_bounded_exponent_bound. bpv_gap_bounded_exponent_bound + e = B) /\ (exists bpv_result_bounded_selected. ((exists ff_b_bounded_selected_power ff_c_bounded_selected_power. ((forall ff_i_bounded_selected_power_repeat. (exists ff_lt_bounded_selected_power_repeat_bound. ff_lt_bounded_selected_power_repeat_bound + S ff_i_bounded_selected_power_repeat = e) -> (((exists ff_h_bounded_selected_power_repeat_decoded. ff_h_bounded_selected_power_repeat_decoded + S (p) = S ((S (ff_i_bounded_selected_power_repeat)) * ff_c_bounded_selected_power)) /\ exists ff_q_bounded_selected_power_repeat_decoded. ff_b_bounded_selected_power = ff_q_bounded_selected_power_repeat_decoded * S ((S (ff_i_bounded_selected_power_repeat)) * ff_c_bounded_selected_power) + (p)))) /\ (exists ff_u_bounded_selected_power_product ff_v_bounded_selected_power_product. ((((exists ff_h_bounded_selected_power_product_start. ff_h_bounded_selected_power_product_start + S (1) = S ((S (0)) * ff_v_bounded_selected_power_product)) /\ exists ff_q_bounded_selected_power_product_start. ff_u_bounded_selected_power_product = ff_q_bounded_selected_power_product_start * S ((S (0)) * ff_v_bounded_selected_power_product) + (1))) /\ ((((exists ff_h_bounded_selected_power_product_terminal. ff_h_bounded_selected_power_product_terminal + S (bpv_result_bounded_selected) = S ((S (e)) * ff_v_bounded_selected_power_product)) /\ exists ff_q_bounded_selected_power_product_terminal. ff_u_bounded_selected_power_product = ff_q_bounded_selected_power_product_terminal * S ((S (e)) * ff_v_bounded_selected_power_product) + (bpv_result_bounded_selected))) /\ forall ff_i_bounded_selected_power_product. (exists ff_lt_bounded_selected_power_product_bound. ff_lt_bounded_selected_power_product_bound + S ff_i_bounded_selected_power_product = e) -> exists ff_p_bounded_selected_power_product ff_r_bounded_selected_power_product ff_s_bounded_selected_power_product. ((((exists ff_h_bounded_selected_power_product_factor. ff_h_bounded_selected_power_product_factor + S (ff_p_bounded_selected_power_product) = S ((S (ff_i_bounded_selected_power_product)) * ff_c_bounded_selected_power)) /\ exists ff_q_bounded_selected_power_product_factor. ff_b_bounded_selected_power = ff_q_bounded_selected_power_product_factor * S ((S (ff_i_bounded_selected_power_product)) * ff_c_bounded_selected_power) + (ff_p_bounded_selected_power_product))) /\ ((((exists ff_h_bounded_selected_power_product_partial. ff_h_bounded_selected_power_product_partial + S (ff_r_bounded_selected_power_product) = S ((S (ff_i_bounded_selected_power_product)) * ff_v_bounded_selected_power_product)) /\ exists ff_q_bounded_selected_power_product_partial. ff_u_bounded_selected_power_product = ff_q_bounded_selected_power_product_partial * S ((S (ff_i_bounded_selected_power_product)) * ff_v_bounded_selected_power_product) + (ff_r_bounded_selected_power_product))) /\ ((((exists ff_h_bounded_selected_power_product_successor. ff_h_bounded_selected_power_product_successor + S (ff_s_bounded_selected_power_product) = S ((S (S ff_i_bounded_selected_power_product)) * ff_v_bounded_selected_power_product)) /\ exists ff_q_bounded_selected_power_product_successor. ff_u_bounded_selected_power_product = ff_q_bounded_selected_power_product_successor * S ((S (S ff_i_bounded_selected_power_product)) * ff_v_bounded_selected_power_product) + (ff_s_bounded_selected_power_product))) /\ ff_s_bounded_selected_power_product = ff_r_bounded_selected_power_product * ff_p_bounded_selected_power_product)))))))) /\ (exists bpv_factor_bounded_selected_divides. a = bpv_result_bounded_selected * bpv_factor_bounded_selected_divides)))) /\ forall bpv_candidate_bounded. (exists bpv_gap_bounded_candidate_bound. bpv_gap_bounded_candidate_bound + bpv_candidate_bounded = B) -> (exists bpv_result_bounded_candidate. ((exists ff_b_bounded_candidate_power ff_c_bounded_candidate_power. ((forall ff_i_bounded_candidate_power_repeat. (exists ff_lt_bounded_candidate_power_repeat_bound. ff_lt_bounded_candidate_power_repeat_bound + S ff_i_bounded_candidate_power_repeat = bpv_candidate_bounded) -> (((exists ff_h_bounded_candidate_power_repeat_decoded. ff_h_bounded_candidate_power_repeat_decoded + S (p) = S ((S (ff_i_bounded_candidate_power_repeat)) * ff_c_bounded_candidate_power)) /\ exists ff_q_bounded_candidate_power_repeat_decoded. ff_b_bounded_candidate_power = ff_q_bounded_candidate_power_repeat_decoded * S ((S (ff_i_bounded_candidate_power_repeat)) * ff_c_bounded_candidate_power) + (p)))) /\ (exists ff_u_bounded_candidate_power_product ff_v_bounded_candidate_power_product. ((((exists ff_h_bounded_candidate_power_product_start. ff_h_bounded_candidate_power_product_start + S (1) = S ((S (0)) * ff_v_bounded_candidate_power_product)) /\ exists ff_q_bounded_candidate_power_product_start. ff_u_bounded_candidate_power_product = ff_q_bounded_candidate_power_product_start * S ((S (0)) * ff_v_bounded_candidate_power_product) + (1))) /\ ((((exists ff_h_bounded_candidate_power_product_terminal. ff_h_bounded_candidate_power_product_terminal + S (bpv_result_bounded_candidate) = S ((S (bpv_candidate_bounded)) * ff_v_bounded_candidate_power_product)) /\ exists ff_q_bounded_candidate_power_product_terminal. ff_u_bounded_candidate_power_product = ff_q_bounded_candidate_power_product_terminal * S ((S (bpv_candidate_bounded)) * ff_v_bounded_candidate_power_product) + (bpv_result_bounded_candidate))) /\ forall ff_i_bounded_candidate_power_product. (exists ff_lt_bounded_candidate_power_product_bound. ff_lt_bounded_candidate_power_product_bound + S ff_i_bounded_candidate_power_product = bpv_candidate_bounded) -> exists ff_p_bounded_candidate_power_product ff_r_bounded_candidate_power_product ff_s_bounded_candidate_power_product. ((((exists ff_h_bounded_candidate_power_product_factor. ff_h_bounded_candidate_power_product_factor + S (ff_p_bounded_candidate_power_product) = S ((S (ff_i_bounded_candidate_power_product)) * ff_c_bounded_candidate_power)) /\ exists ff_q_bounded_candidate_power_product_factor. ff_b_bounded_candidate_power = ff_q_bounded_candidate_power_product_factor * S ((S (ff_i_bounded_candidate_power_product)) * ff_c_bounded_candidate_power) + (ff_p_bounded_candidate_power_product))) /\ ((((exists ff_h_bounded_candidate_power_product_partial. ff_h_bounded_candidate_power_product_partial + S (ff_r_bounded_candidate_power_product) = S ((S (ff_i_bounded_candidate_power_product)) * ff_v_bounded_candidate_power_product)) /\ exists ff_q_bounded_candidate_power_product_partial. ff_u_bounded_candidate_power_product = ff_q_bounded_candidate_power_product_partial * S ((S (ff_i_bounded_candidate_power_product)) * ff_v_bounded_candidate_power_product) + (ff_r_bounded_candidate_power_product))) /\ ((((exists ff_h_bounded_candidate_power_product_successor. ff_h_bounded_candidate_power_product_successor + S (ff_s_bounded_candidate_power_product) = S ((S (S ff_i_bounded_candidate_power_product)) * ff_v_bounded_candidate_power_product)) /\ exists ff_q_bounded_candidate_power_product_successor. ff_u_bounded_candidate_power_product = ff_q_bounded_candidate_power_product_successor * S ((S (S ff_i_bounded_candidate_power_product)) * ff_v_bounded_candidate_power_product) + (ff_s_bounded_candidate_power_product))) /\ ff_s_bounded_candidate_power_product = ff_r_bounded_candidate_power_product * ff_p_bounded_candidate_power_product)))))))) /\ (exists bpv_factor_bounded_candidate_divides. a = bpv_result_bounded_candidate * bpv_factor_bounded_candidate_divides))) -> (exists bpv_gap_bounded_maximal. bpv_gap_bounded_maximal + bpv_candidate_bounded = e))

Proof neighborhood

Direct theorem prerequisites

Direct theorem dependents

Definition-aware tactic body

Only local propositions introduced by have or suffices are compacted. Every changed line has an exact-AST conservative-expansion receipt; the kernel still receives the immutable original tactic script.

Read the argument

Proof checkpoints

24 script commands · 9 reading checkpoints · 2 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 (3)
01Fix variables and assumptionsL1–3

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

  1. L1
    intro p
  2. L2
    intro a
  3. L3
    intro B
02Establish hsearchL4–8

Establish this local claim before using it. It is not an additional assumption.

  1. L4
    have hsearch : (∀ x. Le(x,B) → ¬PowerDivides(p,x,a)) ∨ (∃ x. BoundedPowerValuation(p,a,B,x))Definitions: Le(x,B)PowerDivides(p,x,a)BoundedPowerValuation(p,a,B,x)Original native command in the exact edition
  2. L5
    specialize bounded_power_valuation_search B
  3. L6
    specialize bounded_power_valuation_search p
  4. L7
    specialize bounded_power_valuation_search a
  5. L8
    exact bounded_power_valuation_search
03Separate the logical casesL9–9

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

  1. L9
    cases hsearch
04Establish hzeroL10–16

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

  1. L10
    have hzero : PowerDivides(p,0,a)Definitions: PowerDivides(p,0,a)Original native command in the exact edition
  2. L11
    specialize power_divides_zero p
  3. L12
    specialize power_divides_zero a
  4. L13
    specialize power_divides_zero 0
  5. L14
    apply power_divides_zero
  6. L15
    refl
  7. L16
    specialize hsearch_left 0
05Separate the logical casesL17–17

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

  1. L17
    exfalso
06Use earlier factsL18–21

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

  1. L18
    apply hsearch_left
  2. L19
    specialize zero_le B
  3. L20
    exact zero_le
  4. L21
    exact hzero
07Separate the logical casesL22–22

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

  1. L22
    cases hsearch_right
08Construct an explicit witnessL23–23

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

  1. L23
    exists x
09Use earlier factsL24–24

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

  1. L24
    exact hsearch_right_witness

Library-wide reading audit

Original defined command ledger · 24 lines
  1. 0001intro p
  2. 0002intro a
  3. 0003intro B
  4. 0004have hsearch : (∀ x. Le(x,B) → ¬PowerDivides(p,x,a)) ∨ (∃ x. BoundedPowerValuation(p,a,B,x))
    Exact native replay linehave hsearch : (forall f. (exists bpv_gap_search_none_bound. bpv_gap_search_none_bound + f = B) -> ~(exists bpv_result_search_property. ((exists ff_b_search_property_power ff_c_search_property_power. ((forall ff_i_search_property_power_repeat. (exists ff_lt_search_property_power_repeat_bound. ff_lt_search_property_power_repeat_bound + S ff_i_search_property_power_repeat = f) -> (((exists ff_h_search_property_power_repeat_decoded. ff_h_search_property_power_repeat_decoded + S (p) = S ((S (ff_i_search_property_power_repeat)) * ff_c_search_property_power)) /\ exists ff_q_search_property_power_repeat_decoded. ff_b_search_property_power = ff_q_search_property_power_repeat_decoded * S ((S (ff_i_search_property_power_repeat)) * ff_c_search_property_power) + (p)))) /\ (exists ff_u_search_property_power_product ff_v_search_property_power_product. ((((exists ff_h_search_property_power_product_start. ff_h_search_property_power_product_start + S (1) = S ((S (0)) * ff_v_search_property_power_product)) /\ exists ff_q_search_property_power_product_start. ff_u_search_property_power_product = ff_q_search_property_power_product_start * S ((S (0)) * ff_v_search_property_power_product) + (1))) /\ ((((exists ff_h_search_property_power_product_terminal. ff_h_search_property_power_product_terminal + S (bpv_result_search_property) = S ((S (f)) * ff_v_search_property_power_product)) /\ exists ff_q_search_property_power_product_terminal. ff_u_search_property_power_product = ff_q_search_property_power_product_terminal * S ((S (f)) * ff_v_search_property_power_product) + (bpv_result_search_property))) /\ forall ff_i_search_property_power_product. (exists ff_lt_search_property_power_product_bound. ff_lt_search_property_power_product_bound + S ff_i_search_property_power_product = f) -> exists ff_p_search_property_power_product ff_r_search_property_power_product ff_s_search_property_power_product. ((((exists ff_h_search_property_power_product_factor. ff_h_search_property_power_product_factor + S (ff_p_search_property_power_product) = S ((S (ff_i_search_property_power_product)) * ff_c_search_property_power)) /\ exists ff_q_search_property_power_product_factor. ff_b_search_property_power = ff_q_search_property_power_product_factor * S ((S (ff_i_search_property_power_product)) * ff_c_search_property_power) + (ff_p_search_property_power_product))) /\ ((((exists ff_h_search_property_power_product_partial. ff_h_search_property_power_product_partial + S (ff_r_search_property_power_product) = S ((S (ff_i_search_property_power_product)) * ff_v_search_property_power_product)) /\ exists ff_q_search_property_power_product_partial. ff_u_search_property_power_product = ff_q_search_property_power_product_partial * S ((S (ff_i_search_property_power_product)) * ff_v_search_property_power_product) + (ff_r_search_property_power_product))) /\ ((((exists ff_h_search_property_power_product_successor. ff_h_search_property_power_product_successor + S (ff_s_search_property_power_product) = S ((S (S ff_i_search_property_power_product)) * ff_v_search_property_power_product)) /\ exists ff_q_search_property_power_product_successor. ff_u_search_property_power_product = ff_q_search_property_power_product_successor * S ((S (S ff_i_search_property_power_product)) * ff_v_search_property_power_product) + (ff_s_search_property_power_product))) /\ ff_s_search_property_power_product = ff_r_search_property_power_product * ff_p_search_property_power_product)))))))) /\ (exists bpv_factor_search_property_divides. a = bpv_result_search_property * bpv_factor_search_property_divides)))) \/ (exists e. ((exists bpv_gap_search_selected_bound. bpv_gap_search_selected_bound + e = B) /\ (exists bpv_result_search_selected. ((exists ff_b_search_selected_power ff_c_search_selected_power. ((forall ff_i_search_selected_power_repeat. (exists ff_lt_search_selected_power_repeat_bound. ff_lt_search_selected_power_repeat_bound + S ff_i_search_selected_power_repeat = e) -> (((exists ff_h_search_selected_power_repeat_decoded. ff_h_search_selected_power_repeat_decoded + S (p) = S ((S (ff_i_search_selected_power_repeat)) * ff_c_search_selected_power)) /\ exists ff_q_search_selected_power_repeat_decoded. ff_b_search_selected_power = ff_q_search_selected_power_repeat_decoded * S ((S (ff_i_search_selected_power_repeat)) * ff_c_search_selected_power) + (p)))) /\ (exists ff_u_search_selected_power_product ff_v_search_selected_power_product. ((((exists ff_h_search_selected_power_product_start. ff_h_search_selected_power_product_start + S (1) = S ((S (0)) * ff_v_search_selected_power_product)) /\ exists ff_q_search_selected_power_product_start. ff_u_search_selected_power_product = ff_q_search_selected_power_product_start * S ((S (0)) * ff_v_search_selected_power_product) + (1))) /\ ((((exists ff_h_search_selected_power_product_terminal. ff_h_search_selected_power_product_terminal + S (bpv_result_search_selected) = S ((S (e)) * ff_v_search_selected_power_product)) /\ exists ff_q_search_selected_power_product_terminal. ff_u_search_selected_power_product = ff_q_search_selected_power_product_terminal * S ((S (e)) * ff_v_search_selected_power_product) + (bpv_result_search_selected))) /\ forall ff_i_search_selected_power_product. (exists ff_lt_search_selected_power_product_bound. ff_lt_search_selected_power_product_bound + S ff_i_search_selected_power_product = e) -> exists ff_p_search_selected_power_product ff_r_search_selected_power_product ff_s_search_selected_power_product. ((((exists ff_h_search_selected_power_product_factor. ff_h_search_selected_power_product_factor + S (ff_p_search_selected_power_product) = S ((S (ff_i_search_selected_power_product)) * ff_c_search_selected_power)) /\ exists ff_q_search_selected_power_product_factor. ff_b_search_selected_power = ff_q_search_selected_power_product_factor * S ((S (ff_i_search_selected_power_product)) * ff_c_search_selected_power) + (ff_p_search_selected_power_product))) /\ ((((exists ff_h_search_selected_power_product_partial. ff_h_search_selected_power_product_partial + S (ff_r_search_selected_power_product) = S ((S (ff_i_search_selected_power_product)) * ff_v_search_selected_power_product)) /\ exists ff_q_search_selected_power_product_partial. ff_u_search_selected_power_product = ff_q_search_selected_power_product_partial * S ((S (ff_i_search_selected_power_product)) * ff_v_search_selected_power_product) + (ff_r_search_selected_power_product))) /\ ((((exists ff_h_search_selected_power_product_successor. ff_h_search_selected_power_product_successor + S (ff_s_search_selected_power_product) = S ((S (S ff_i_search_selected_power_product)) * ff_v_search_selected_power_product)) /\ exists ff_q_search_selected_power_product_successor. ff_u_search_selected_power_product = ff_q_search_selected_power_product_successor * S ((S (S ff_i_search_selected_power_product)) * ff_v_search_selected_power_product) + (ff_s_search_selected_power_product))) /\ ff_s_search_selected_power_product = ff_r_search_selected_power_product * ff_p_search_selected_power_product)))))))) /\ (exists bpv_factor_search_selected_divides. a = bpv_result_search_selected * bpv_factor_search_selected_divides)))) /\ forall f. (exists bpv_gap_search_candidate_bound. bpv_gap_search_candidate_bound + f = B) -> (exists bpv_result_search_candidate. ((exists ff_b_search_candidate_power ff_c_search_candidate_power. ((forall ff_i_search_candidate_power_repeat. (exists ff_lt_search_candidate_power_repeat_bound. ff_lt_search_candidate_power_repeat_bound + S ff_i_search_candidate_power_repeat = f) -> (((exists ff_h_search_candidate_power_repeat_decoded. ff_h_search_candidate_power_repeat_decoded + S (p) = S ((S (ff_i_search_candidate_power_repeat)) * ff_c_search_candidate_power)) /\ exists ff_q_search_candidate_power_repeat_decoded. ff_b_search_candidate_power = ff_q_search_candidate_power_repeat_decoded * S ((S (ff_i_search_candidate_power_repeat)) * ff_c_search_candidate_power) + (p)))) /\ (exists ff_u_search_candidate_power_product ff_v_search_candidate_power_product. ((((exists ff_h_search_candidate_power_product_start. ff_h_search_candidate_power_product_start + S (1) = S ((S (0)) * ff_v_search_candidate_power_product)) /\ exists ff_q_search_candidate_power_product_start. ff_u_search_candidate_power_product = ff_q_search_candidate_power_product_start * S ((S (0)) * ff_v_search_candidate_power_product) + (1))) /\ ((((exists ff_h_search_candidate_power_product_terminal. ff_h_search_candidate_power_product_terminal + S (bpv_result_search_candidate) = S ((S (f)) * ff_v_search_candidate_power_product)) /\ exists ff_q_search_candidate_power_product_terminal. ff_u_search_candidate_power_product = ff_q_search_candidate_power_product_terminal * S ((S (f)) * ff_v_search_candidate_power_product) + (bpv_result_search_candidate))) /\ forall ff_i_search_candidate_power_product. (exists ff_lt_search_candidate_power_product_bound. ff_lt_search_candidate_power_product_bound + S ff_i_search_candidate_power_product = f) -> exists ff_p_search_candidate_power_product ff_r_search_candidate_power_product ff_s_search_candidate_power_product. ((((exists ff_h_search_candidate_power_product_factor. ff_h_search_candidate_power_product_factor + S (ff_p_search_candidate_power_product) = S ((S (ff_i_search_candidate_power_product)) * ff_c_search_candidate_power)) /\ exists ff_q_search_candidate_power_product_factor. ff_b_search_candidate_power = ff_q_search_candidate_power_product_factor * S ((S (ff_i_search_candidate_power_product)) * ff_c_search_candidate_power) + (ff_p_search_candidate_power_product))) /\ ((((exists ff_h_search_candidate_power_product_partial. ff_h_search_candidate_power_product_partial + S (ff_r_search_candidate_power_product) = S ((S (ff_i_search_candidate_power_product)) * ff_v_search_candidate_power_product)) /\ exists ff_q_search_candidate_power_product_partial. ff_u_search_candidate_power_product = ff_q_search_candidate_power_product_partial * S ((S (ff_i_search_candidate_power_product)) * ff_v_search_candidate_power_product) + (ff_r_search_candidate_power_product))) /\ ((((exists ff_h_search_candidate_power_product_successor. ff_h_search_candidate_power_product_successor + S (ff_s_search_candidate_power_product) = S ((S (S ff_i_search_candidate_power_product)) * ff_v_search_candidate_power_product)) /\ exists ff_q_search_candidate_power_product_successor. ff_u_search_candidate_power_product = ff_q_search_candidate_power_product_successor * S ((S (S ff_i_search_candidate_power_product)) * ff_v_search_candidate_power_product) + (ff_s_search_candidate_power_product))) /\ ff_s_search_candidate_power_product = ff_r_search_candidate_power_product * ff_p_search_candidate_power_product)))))))) /\ (exists bpv_factor_search_candidate_divides. a = bpv_result_search_candidate * bpv_factor_search_candidate_divides))) -> (exists bpv_gap_search_maximal. bpv_gap_search_maximal + f = e))
  5. 0005specialize bounded_power_valuation_search B
  6. 0006specialize bounded_power_valuation_search p
  7. 0007specialize bounded_power_valuation_search a
  8. 0008exact bounded_power_valuation_search
  9. 0009cases hsearch
  10. 0010have hzero : PowerDivides(p,0,a)
    Exact native replay linehave hzero : (exists bpvi_result_exists_zero. ((exists bpvi_b_exists_zero_power bpvi_c_exists_zero_power. ((forall bpvi_i_exists_zero_power. (exists bpvi_repeat_gap_exists_zero_power. bpvi_repeat_gap_exists_zero_power + S bpvi_i_exists_zero_power = 0) -> (((exists bpvi_h_exists_zero_power_repeat. bpvi_h_exists_zero_power_repeat + S (p) = S ((S (bpvi_i_exists_zero_power)) * bpvi_c_exists_zero_power)) /\ exists bpvi_q_exists_zero_power_repeat. bpvi_b_exists_zero_power = bpvi_q_exists_zero_power_repeat * S ((S (bpvi_i_exists_zero_power)) * bpvi_c_exists_zero_power) + (p)))) /\ (exists bpvi_u_exists_zero_power bpvi_v_exists_zero_power. ((((exists bpvi_h_exists_zero_power_start. bpvi_h_exists_zero_power_start + S (1) = S ((S (0)) * bpvi_v_exists_zero_power)) /\ exists bpvi_q_exists_zero_power_start. bpvi_u_exists_zero_power = bpvi_q_exists_zero_power_start * S ((S (0)) * bpvi_v_exists_zero_power) + (1))) /\ ((((exists bpvi_h_exists_zero_power_terminal. bpvi_h_exists_zero_power_terminal + S (bpvi_result_exists_zero) = S ((S (0)) * bpvi_v_exists_zero_power)) /\ exists bpvi_q_exists_zero_power_terminal. bpvi_u_exists_zero_power = bpvi_q_exists_zero_power_terminal * S ((S (0)) * bpvi_v_exists_zero_power) + (bpvi_result_exists_zero))) /\ forall bpvi_j_exists_zero_power. (exists bpvi_product_gap_exists_zero_power. bpvi_product_gap_exists_zero_power + S bpvi_j_exists_zero_power = 0) -> exists bpvi_factor_exists_zero_power bpvi_partial_exists_zero_power bpvi_successor_exists_zero_power. ((((exists bpvi_h_exists_zero_power_factor. bpvi_h_exists_zero_power_factor + S (bpvi_factor_exists_zero_power) = S ((S (bpvi_j_exists_zero_power)) * bpvi_c_exists_zero_power)) /\ exists bpvi_q_exists_zero_power_factor. bpvi_b_exists_zero_power = bpvi_q_exists_zero_power_factor * S ((S (bpvi_j_exists_zero_power)) * bpvi_c_exists_zero_power) + (bpvi_factor_exists_zero_power))) /\ ((((exists bpvi_h_exists_zero_power_partial. bpvi_h_exists_zero_power_partial + S (bpvi_partial_exists_zero_power) = S ((S (bpvi_j_exists_zero_power)) * bpvi_v_exists_zero_power)) /\ exists bpvi_q_exists_zero_power_partial. bpvi_u_exists_zero_power = bpvi_q_exists_zero_power_partial * S ((S (bpvi_j_exists_zero_power)) * bpvi_v_exists_zero_power) + (bpvi_partial_exists_zero_power))) /\ ((((exists bpvi_h_exists_zero_power_successor. bpvi_h_exists_zero_power_successor + S (bpvi_successor_exists_zero_power) = S ((S (S bpvi_j_exists_zero_power)) * bpvi_v_exists_zero_power)) /\ exists bpvi_q_exists_zero_power_successor. bpvi_u_exists_zero_power = bpvi_q_exists_zero_power_successor * S ((S (S bpvi_j_exists_zero_power)) * bpvi_v_exists_zero_power) + (bpvi_successor_exists_zero_power))) /\ bpvi_successor_exists_zero_power = bpvi_partial_exists_zero_power * bpvi_factor_exists_zero_power)))))))) /\ exists bpvi_divisor_factor_exists_zero. a = bpvi_result_exists_zero * bpvi_divisor_factor_exists_zero))
  11. 0011specialize power_divides_zero p
  12. 0012specialize power_divides_zero a
  13. 0013specialize power_divides_zero 0
  14. 0014apply power_divides_zero
  15. 0015refl
  16. 0016specialize hsearch_left 0
  17. 0017exfalso
  18. 0018apply hsearch_left
  19. 0019specialize zero_le B
  20. 0020exact zero_le
  21. 0021exact hzero
  22. 0022cases hsearch_right
  23. 0023exists x
  24. 0024exact hsearch_right_witness