BT00VP · Bertrand theorem

central_binom_odd_middle_le_four_pow

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

The odd-row middle coefficient is at most four to the half-row.

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

∀ n. ∀ m. ∀ q. Choose(S (n + n),n,m)Pow(4,n,q)Le(m,q)

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

3 occurrences

In local proof propositions

11 occurrences

Exact expanded native-PA statement
forall n m q. (((exists bcf_lt_gap_bcomlfp_middle_out_of_range. bcf_lt_gap_bcomlfp_middle_out_of_range + S (S (n + n)) = n) /\ m = 0) \/ ((exists bcf_le_gap_bcomlfp_middle_in_range. bcf_le_gap_bcomlfp_middle_in_range + (n) = S (n + n)) /\ (exists bcf_row_code_code_bcomlfp_middle bcf_row_code_scale_bcomlfp_middle bcf_row_scale_code_bcomlfp_middle bcf_row_scale_scale_bcomlfp_middle bcf_row_code_bcomlfp_middle bcf_row_scale_bcomlfp_middle. ((forall bcf_row_index_bcomlfp_middle_table. (exists bcf_lt_gap_bcomlfp_middle_table_row_bound. bcf_lt_gap_bcomlfp_middle_table_row_bound + S (bcf_row_index_bcomlfp_middle_table) = S (S (n + n))) -> exists bcf_row_code_bcomlfp_middle_table bcf_row_scale_bcomlfp_middle_table. ((((exists bcf_height_bcomlfp_middle_table_decoded_row_code. bcf_height_bcomlfp_middle_table_decoded_row_code + S (bcf_row_code_bcomlfp_middle_table) = S ((S (bcf_row_index_bcomlfp_middle_table)) * bcf_row_code_scale_bcomlfp_middle)) /\ exists bcf_quotient_bcomlfp_middle_table_decoded_row_code. bcf_row_code_code_bcomlfp_middle = bcf_quotient_bcomlfp_middle_table_decoded_row_code * S ((S (bcf_row_index_bcomlfp_middle_table)) * bcf_row_code_scale_bcomlfp_middle) + (bcf_row_code_bcomlfp_middle_table))) /\ ((((exists bcf_height_bcomlfp_middle_table_decoded_row_scale. bcf_height_bcomlfp_middle_table_decoded_row_scale + S (bcf_row_scale_bcomlfp_middle_table) = S ((S (bcf_row_index_bcomlfp_middle_table)) * bcf_row_scale_scale_bcomlfp_middle)) /\ exists bcf_quotient_bcomlfp_middle_table_decoded_row_scale. bcf_row_scale_code_bcomlfp_middle = bcf_quotient_bcomlfp_middle_table_decoded_row_scale * S ((S (bcf_row_index_bcomlfp_middle_table)) * bcf_row_scale_scale_bcomlfp_middle) + (bcf_row_scale_bcomlfp_middle_table))) /\ ((bcf_row_index_bcomlfp_middle_table = 0 /\ (forall bcf_index_bcomlfp_middle_table_zero_row. (exists bcf_lt_gap_bcomlfp_middle_table_zero_row_bound. bcf_lt_gap_bcomlfp_middle_table_zero_row_bound + S (bcf_index_bcomlfp_middle_table_zero_row) = S (S (n + n))) -> exists bcf_value_bcomlfp_middle_table_zero_row. ((((exists bcf_height_bcomlfp_middle_table_zero_row_entry. bcf_height_bcomlfp_middle_table_zero_row_entry + S (bcf_value_bcomlfp_middle_table_zero_row) = S ((S (bcf_index_bcomlfp_middle_table_zero_row)) * bcf_row_scale_bcomlfp_middle_table)) /\ exists bcf_quotient_bcomlfp_middle_table_zero_row_entry. bcf_row_code_bcomlfp_middle_table = bcf_quotient_bcomlfp_middle_table_zero_row_entry * S ((S (bcf_index_bcomlfp_middle_table_zero_row)) * bcf_row_scale_bcomlfp_middle_table) + (bcf_value_bcomlfp_middle_table_zero_row))) /\ ((bcf_index_bcomlfp_middle_table_zero_row = 0 /\ bcf_value_bcomlfp_middle_table_zero_row = 1) \/ exists bcf_predecessor_bcomlfp_middle_table_zero_row. bcf_index_bcomlfp_middle_table_zero_row = S bcf_predecessor_bcomlfp_middle_table_zero_row /\ bcf_value_bcomlfp_middle_table_zero_row = 0)))) \/ exists bcf_predecessor_bcomlfp_middle_table bcf_previous_code_bcomlfp_middle_table bcf_previous_scale_bcomlfp_middle_table. bcf_row_index_bcomlfp_middle_table = S bcf_predecessor_bcomlfp_middle_table /\ ((((exists bcf_height_bcomlfp_middle_table_decoded_previous_code. bcf_height_bcomlfp_middle_table_decoded_previous_code + S (bcf_previous_code_bcomlfp_middle_table) = S ((S (bcf_predecessor_bcomlfp_middle_table)) * bcf_row_code_scale_bcomlfp_middle)) /\ exists bcf_quotient_bcomlfp_middle_table_decoded_previous_code. bcf_row_code_code_bcomlfp_middle = bcf_quotient_bcomlfp_middle_table_decoded_previous_code * S ((S (bcf_predecessor_bcomlfp_middle_table)) * bcf_row_code_scale_bcomlfp_middle) + (bcf_previous_code_bcomlfp_middle_table))) /\ ((((exists bcf_height_bcomlfp_middle_table_decoded_previous_scale. bcf_height_bcomlfp_middle_table_decoded_previous_scale + S (bcf_previous_scale_bcomlfp_middle_table) = S ((S (bcf_predecessor_bcomlfp_middle_table)) * bcf_row_scale_scale_bcomlfp_middle)) /\ exists bcf_quotient_bcomlfp_middle_table_decoded_previous_scale. bcf_row_scale_code_bcomlfp_middle = bcf_quotient_bcomlfp_middle_table_decoded_previous_scale * S ((S (bcf_predecessor_bcomlfp_middle_table)) * bcf_row_scale_scale_bcomlfp_middle) + (bcf_previous_scale_bcomlfp_middle_table))) /\ (forall bcf_index_bcomlfp_middle_table_row_step. (exists bcf_lt_gap_bcomlfp_middle_table_row_step_bound. bcf_lt_gap_bcomlfp_middle_table_row_step_bound + S (bcf_index_bcomlfp_middle_table_row_step) = S (S (n + n))) -> exists bcf_value_bcomlfp_middle_table_row_step. ((((exists bcf_height_bcomlfp_middle_table_row_step_entry. bcf_height_bcomlfp_middle_table_row_step_entry + S (bcf_value_bcomlfp_middle_table_row_step) = S ((S (bcf_index_bcomlfp_middle_table_row_step)) * bcf_row_scale_bcomlfp_middle_table)) /\ exists bcf_quotient_bcomlfp_middle_table_row_step_entry. bcf_row_code_bcomlfp_middle_table = bcf_quotient_bcomlfp_middle_table_row_step_entry * S ((S (bcf_index_bcomlfp_middle_table_row_step)) * bcf_row_scale_bcomlfp_middle_table) + (bcf_value_bcomlfp_middle_table_row_step))) /\ ((bcf_index_bcomlfp_middle_table_row_step = 0 /\ bcf_value_bcomlfp_middle_table_row_step = 1) \/ exists bcf_predecessor_bcomlfp_middle_table_row_step bcf_left_bcomlfp_middle_table_row_step bcf_right_bcomlfp_middle_table_row_step. bcf_index_bcomlfp_middle_table_row_step = S bcf_predecessor_bcomlfp_middle_table_row_step /\ ((((exists bcf_height_bcomlfp_middle_table_row_step_previous_left. bcf_height_bcomlfp_middle_table_row_step_previous_left + S (bcf_left_bcomlfp_middle_table_row_step) = S ((S (bcf_predecessor_bcomlfp_middle_table_row_step)) * bcf_previous_scale_bcomlfp_middle_table)) /\ exists bcf_quotient_bcomlfp_middle_table_row_step_previous_left. bcf_previous_code_bcomlfp_middle_table = bcf_quotient_bcomlfp_middle_table_row_step_previous_left * S ((S (bcf_predecessor_bcomlfp_middle_table_row_step)) * bcf_previous_scale_bcomlfp_middle_table) + (bcf_left_bcomlfp_middle_table_row_step))) /\ ((((exists bcf_height_bcomlfp_middle_table_row_step_previous_right. bcf_height_bcomlfp_middle_table_row_step_previous_right + S (bcf_right_bcomlfp_middle_table_row_step) = S ((S (S (bcf_predecessor_bcomlfp_middle_table_row_step))) * bcf_previous_scale_bcomlfp_middle_table)) /\ exists bcf_quotient_bcomlfp_middle_table_row_step_previous_right. bcf_previous_code_bcomlfp_middle_table = bcf_quotient_bcomlfp_middle_table_row_step_previous_right * S ((S (S (bcf_predecessor_bcomlfp_middle_table_row_step))) * bcf_previous_scale_bcomlfp_middle_table) + (bcf_right_bcomlfp_middle_table_row_step))) /\ bcf_value_bcomlfp_middle_table_row_step = bcf_left_bcomlfp_middle_table_row_step + bcf_right_bcomlfp_middle_table_row_step))))))))))) /\ ((((exists bcf_height_bcomlfp_middle_decoded_row_code. bcf_height_bcomlfp_middle_decoded_row_code + S (bcf_row_code_bcomlfp_middle) = S ((S (S (n + n))) * bcf_row_code_scale_bcomlfp_middle)) /\ exists bcf_quotient_bcomlfp_middle_decoded_row_code. bcf_row_code_code_bcomlfp_middle = bcf_quotient_bcomlfp_middle_decoded_row_code * S ((S (S (n + n))) * bcf_row_code_scale_bcomlfp_middle) + (bcf_row_code_bcomlfp_middle))) /\ ((((exists bcf_height_bcomlfp_middle_decoded_row_scale. bcf_height_bcomlfp_middle_decoded_row_scale + S (bcf_row_scale_bcomlfp_middle) = S ((S (S (n + n))) * bcf_row_scale_scale_bcomlfp_middle)) /\ exists bcf_quotient_bcomlfp_middle_decoded_row_scale. bcf_row_scale_code_bcomlfp_middle = bcf_quotient_bcomlfp_middle_decoded_row_scale * S ((S (S (n + n))) * bcf_row_scale_scale_bcomlfp_middle) + (bcf_row_scale_bcomlfp_middle))) /\ (((exists bcf_height_bcomlfp_middle_decoded_value. bcf_height_bcomlfp_middle_decoded_value + S (m) = S ((S (n)) * bcf_row_scale_bcomlfp_middle)) /\ exists bcf_quotient_bcomlfp_middle_decoded_value. bcf_row_code_bcomlfp_middle = bcf_quotient_bcomlfp_middle_decoded_value * S ((S (n)) * bcf_row_scale_bcomlfp_middle) + (m))))))))) -> (exists pa_b_bcomlfp_power pa_c_bcomlfp_power. ((forall pa_i_bcomlfp_power_repeat. (exists pa_lt_bcomlfp_power_repeat_bound. pa_lt_bcomlfp_power_repeat_bound + S pa_i_bcomlfp_power_repeat = n) -> (((exists pa_h_bcomlfp_power_repeat_decoded. pa_h_bcomlfp_power_repeat_decoded + S (4) = S ((S (pa_i_bcomlfp_power_repeat)) * pa_c_bcomlfp_power)) /\ exists pa_q_bcomlfp_power_repeat_decoded. pa_b_bcomlfp_power = pa_q_bcomlfp_power_repeat_decoded * S ((S (pa_i_bcomlfp_power_repeat)) * pa_c_bcomlfp_power) + (4)))) /\ (exists pa_u_bcomlfp_power_product pa_v_bcomlfp_power_product. ((((exists pa_h_bcomlfp_power_product_start. pa_h_bcomlfp_power_product_start + S (1) = S ((S (0)) * pa_v_bcomlfp_power_product)) /\ exists pa_q_bcomlfp_power_product_start. pa_u_bcomlfp_power_product = pa_q_bcomlfp_power_product_start * S ((S (0)) * pa_v_bcomlfp_power_product) + (1))) /\ ((((exists pa_h_bcomlfp_power_product_terminal. pa_h_bcomlfp_power_product_terminal + S (q) = S ((S (n)) * pa_v_bcomlfp_power_product)) /\ exists pa_q_bcomlfp_power_product_terminal. pa_u_bcomlfp_power_product = pa_q_bcomlfp_power_product_terminal * S ((S (n)) * pa_v_bcomlfp_power_product) + (q))) /\ forall pa_i_bcomlfp_power_product. (exists pa_lt_bcomlfp_power_product_bound. pa_lt_bcomlfp_power_product_bound + S pa_i_bcomlfp_power_product = n) -> exists pa_p_bcomlfp_power_product pa_r_bcomlfp_power_product pa_s_bcomlfp_power_product. ((((exists pa_h_bcomlfp_power_product_factor. pa_h_bcomlfp_power_product_factor + S (pa_p_bcomlfp_power_product) = S ((S (pa_i_bcomlfp_power_product)) * pa_c_bcomlfp_power)) /\ exists pa_q_bcomlfp_power_product_factor. pa_b_bcomlfp_power = pa_q_bcomlfp_power_product_factor * S ((S (pa_i_bcomlfp_power_product)) * pa_c_bcomlfp_power) + (pa_p_bcomlfp_power_product))) /\ ((((exists pa_h_bcomlfp_power_product_partial. pa_h_bcomlfp_power_product_partial + S (pa_r_bcomlfp_power_product) = S ((S (pa_i_bcomlfp_power_product)) * pa_v_bcomlfp_power_product)) /\ exists pa_q_bcomlfp_power_product_partial. pa_u_bcomlfp_power_product = pa_q_bcomlfp_power_product_partial * S ((S (pa_i_bcomlfp_power_product)) * pa_v_bcomlfp_power_product) + (pa_r_bcomlfp_power_product))) /\ ((((exists pa_h_bcomlfp_power_product_successor. pa_h_bcomlfp_power_product_successor + S (pa_s_bcomlfp_power_product) = S ((S (S pa_i_bcomlfp_power_product)) * pa_v_bcomlfp_power_product)) /\ exists pa_q_bcomlfp_power_product_successor. pa_u_bcomlfp_power_product = pa_q_bcomlfp_power_product_successor * S ((S (S pa_i_bcomlfp_power_product)) * pa_v_bcomlfp_power_product) + (pa_s_bcomlfp_power_product))) /\ pa_s_bcomlfp_power_product = pa_r_bcomlfp_power_product * pa_p_bcomlfp_power_product)))))))) -> (exists bcf_le_gap_bcomlfp_result. bcf_le_gap_bcomlfp_result + (m) = q)

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

62 script commands · 13 reading checkpoints · 9 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 (8)
01Fix variables and assumptionsL1–5

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

  1. L1
    intro n
  2. L2
    intro m
  3. L3
    intro q
  4. L4
    intro hmiddle
  5. L5
    intro hpower
02Establish hpackageL6–7

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

  1. L6
    have hpackage : (∀ x. ∀ y. ∀ z. CentralBinom(x,y) → CentralBinom(S x,z) → S x · z = 2 · S (x + x) · y) ∧ (∀ x. ∀ y. ∀ z. CentralBinom(S x,y) → Choose(S (x + x),x,z) → y = z + z) ∧ (∀ x. ∃ y. CentralBinom(x,y))Definitions: CentralBinom(x,y)CentralBinom(S x,z)CentralBinom(S x,y)Choose(S (x + x),x,z)Original native command in the exact edition
  2. L7
    exact central_binom_upper_support_package
03Separate the logical casesL8–9

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

  1. L8
    cases hpackage
  2. L9
    cases hpackage_left
04Establish hcentral_existsL10–11

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

  1. L10
    have hcentral_exists : ∃ d. CentralBinom(S n,d)Definitions: CentralBinom(S n,d)Original native command in the exact edition
  2. L11
    apply hpackage_right
05Separate the logical casesL12–12

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

  1. L12
    cases hcentral_exists
06Establish hdoubleL13–16

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hpackage left right.

  1. L13
    have hdouble : x = m + m
  2. L14
    apply hpackage_left_right
  3. L15
    exact hcentral_exists_witness
  4. L16
    exact hmiddle
07Establish hsuccessor_powerL17–24

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pow successor compose.

  1. L17
    have hsuccessor_power : Pow(4,S n,q · 4)Definitions: Pow(4,S n,q · 4)Original native command in the exact edition
  2. L18
    specialize pow_successor_compose 4
  3. L19
    specialize pow_successor_compose n
  4. L20
    specialize pow_successor_compose q
  5. L21
    specialize pow_successor_compose (q * 4)
  6. L22
    apply pow_successor_compose
  7. L23
    exact hpower
  8. L24
    refl
08Establish hstrong_allL25–28

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply central binom strong upper of laws.

  1. L25
    have hstrong_all : ∀ n. ∀ c. ∀ q. CentralBinom(S n,c) → Pow(4,S n,q) → Le(2 · c,q)Definitions: CentralBinom(S n,c)Pow(4,S n,q)Le(2 · c,q)Original native command in the exact edition
  2. L26
    apply central_binom_strong_upper_of_laws
  3. L27
    exact hpackage_left_left
  4. L28
    exact hpackage_right
09Establish hstrongL29–35

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

  1. L29
    have hstrong : Le(2 · x,q · 4)Definitions: Le(2 · x,q · 4)Original native command in the exact edition
  2. L30
    specialize hstrong_all n
  3. L31
    specialize hstrong_all x
  4. L32
    specialize hstrong_all (q * 4)
  5. L33
    apply hstrong_all
  6. L34
    exact hcentral_exists_witness
  7. L35
    exact hsuccessor_power
10Establish hleftL36–45

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

  1. L36
    have hleft : 2 * (m + m) = 4 * m
  2. L37
    trans 2 * m + 2 * m
  3. L38
    apply mul_add
  4. L39
    trans 2 * (2 * m)
  5. L40
    specialize two_mul_eq_add_self (2 * m)
  6. L41
    symm
  7. L42
    exact two_mul_eq_add_self
  8. L43
    trans (2 * 2) * m
  9. L44
    symm
  10. L45
    apply mul_assoc
11Establish htwo_twoL46–49

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

  1. L46
    have htwo_two : 2 * 2 = 4
  2. L47
    norm_num
  3. L48
    rewrite htwo_two
  4. L49
    refl
12Establish hrightL50–59

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

  1. L50
    have hright : q * 4 = 4 * q
  2. L51
    apply mul_comm
  3. L52
    rewrite hdouble at hstrong
  4. L53
    rewrite hleft at hstrong
  5. L54
    rewrite hright at hstrong
  6. L55
    specialize mul_le_cancel_left_nonzero 4
  7. L56
    specialize mul_le_cancel_left_nonzero m
  8. L57
    specialize mul_le_cancel_left_nonzero q
  9. L58
    apply mul_le_cancel_left_nonzero
  10. L59
    intro hfour_zero
13Use earlier factsL60–62

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

  1. L60
    apply PA1
  2. L61
    exact hfour_zero
  3. L62
    exact hstrong

Library-wide reading audit

Original defined command ledger · 62 lines
  1. 0001intro n
  2. 0002intro m
  3. 0003intro q
  4. 0004intro hmiddle
  5. 0005intro hpower
  6. 0006have hpackage : (∀ x. ∀ y. ∀ z. CentralBinom(x,y)CentralBinom(S x,z) → S x · z = 2 · S (x + x) · y) ∧ (∀ x. ∀ y. ∀ z. CentralBinom(S x,y)Choose(S (x + x),x,z) → y = z + z) ∧ (∀ x. ∃ y. CentralBinom(x,y))
    Exact native replay linehave hpackage : ((((forall n c d. (((exists bcf_lt_gap_bcbrdb_predecessor_out_of_range. bcf_lt_gap_bcbrdb_predecessor_out_of_range + S (n + n) = n) /\ c = 0) \/ ((exists bcf_le_gap_bcbrdb_predecessor_in_range. bcf_le_gap_bcbrdb_predecessor_in_range + (n) = n + n) /\ (exists bcf_row_code_code_bcbrdb_predecessor bcf_row_code_scale_bcbrdb_predecessor bcf_row_scale_code_bcbrdb_predecessor bcf_row_scale_scale_bcbrdb_predecessor bcf_row_code_bcbrdb_predecessor bcf_row_scale_bcbrdb_predecessor. ((forall bcf_row_index_bcbrdb_predecessor_table. (exists bcf_lt_gap_bcbrdb_predecessor_table_row_bound. bcf_lt_gap_bcbrdb_predecessor_table_row_bound + S (bcf_row_index_bcbrdb_predecessor_table) = S (n + n)) -> exists bcf_row_code_bcbrdb_predecessor_table bcf_row_scale_bcbrdb_predecessor_table. ((((exists bcf_height_bcbrdb_predecessor_table_decoded_row_code. bcf_height_bcbrdb_predecessor_table_decoded_row_code + S (bcf_row_code_bcbrdb_predecessor_table) = S ((S (bcf_row_index_bcbrdb_predecessor_table)) * bcf_row_code_scale_bcbrdb_predecessor)) /\ exists bcf_quotient_bcbrdb_predecessor_table_decoded_row_code. bcf_row_code_code_bcbrdb_predecessor = bcf_quotient_bcbrdb_predecessor_table_decoded_row_code * S ((S (bcf_row_index_bcbrdb_predecessor_table)) * bcf_row_code_scale_bcbrdb_predecessor) + (bcf_row_code_bcbrdb_predecessor_table))) /\ ((((exists bcf_height_bcbrdb_predecessor_table_decoded_row_scale. bcf_height_bcbrdb_predecessor_table_decoded_row_scale + S (bcf_row_scale_bcbrdb_predecessor_table) = S ((S (bcf_row_index_bcbrdb_predecessor_table)) * bcf_row_scale_scale_bcbrdb_predecessor)) /\ exists bcf_quotient_bcbrdb_predecessor_table_decoded_row_scale. bcf_row_scale_code_bcbrdb_predecessor = bcf_quotient_bcbrdb_predecessor_table_decoded_row_scale * S ((S (bcf_row_index_bcbrdb_predecessor_table)) * bcf_row_scale_scale_bcbrdb_predecessor) + (bcf_row_scale_bcbrdb_predecessor_table))) /\ ((bcf_row_index_bcbrdb_predecessor_table = 0 /\ (forall bcf_index_bcbrdb_predecessor_table_zero_row. (exists bcf_lt_gap_bcbrdb_predecessor_table_zero_row_bound. bcf_lt_gap_bcbrdb_predecessor_table_zero_row_bound + S (bcf_index_bcbrdb_predecessor_table_zero_row) = S (n + n)) -> exists bcf_value_bcbrdb_predecessor_table_zero_row. ((((exists bcf_height_bcbrdb_predecessor_table_zero_row_entry. bcf_height_bcbrdb_predecessor_table_zero_row_entry + S (bcf_value_bcbrdb_predecessor_table_zero_row) = S ((S (bcf_index_bcbrdb_predecessor_table_zero_row)) * bcf_row_scale_bcbrdb_predecessor_table)) /\ exists bcf_quotient_bcbrdb_predecessor_table_zero_row_entry. bcf_row_code_bcbrdb_predecessor_table = bcf_quotient_bcbrdb_predecessor_table_zero_row_entry * S ((S (bcf_index_bcbrdb_predecessor_table_zero_row)) * bcf_row_scale_bcbrdb_predecessor_table) + (bcf_value_bcbrdb_predecessor_table_zero_row))) /\ ((bcf_index_bcbrdb_predecessor_table_zero_row = 0 /\ bcf_value_bcbrdb_predecessor_table_zero_row = 1) \/ exists bcf_predecessor_bcbrdb_predecessor_table_zero_row. bcf_index_bcbrdb_predecessor_table_zero_row = S bcf_predecessor_bcbrdb_predecessor_table_zero_row /\ bcf_value_bcbrdb_predecessor_table_zero_row = 0)))) \/ exists bcf_predecessor_bcbrdb_predecessor_table bcf_previous_code_bcbrdb_predecessor_table bcf_previous_scale_bcbrdb_predecessor_table. bcf_row_index_bcbrdb_predecessor_table = S bcf_predecessor_bcbrdb_predecessor_table /\ ((((exists bcf_height_bcbrdb_predecessor_table_decoded_previous_code. bcf_height_bcbrdb_predecessor_table_decoded_previous_code + S (bcf_previous_code_bcbrdb_predecessor_table) = S ((S (bcf_predecessor_bcbrdb_predecessor_table)) * bcf_row_code_scale_bcbrdb_predecessor)) /\ exists bcf_quotient_bcbrdb_predecessor_table_decoded_previous_code. bcf_row_code_code_bcbrdb_predecessor = bcf_quotient_bcbrdb_predecessor_table_decoded_previous_code * S ((S (bcf_predecessor_bcbrdb_predecessor_table)) * bcf_row_code_scale_bcbrdb_predecessor) + (bcf_previous_code_bcbrdb_predecessor_table))) /\ ((((exists bcf_height_bcbrdb_predecessor_table_decoded_previous_scale. bcf_height_bcbrdb_predecessor_table_decoded_previous_scale + S (bcf_previous_scale_bcbrdb_predecessor_table) = S ((S (bcf_predecessor_bcbrdb_predecessor_table)) * bcf_row_scale_scale_bcbrdb_predecessor)) /\ exists bcf_quotient_bcbrdb_predecessor_table_decoded_previous_scale. bcf_row_scale_code_bcbrdb_predecessor = bcf_quotient_bcbrdb_predecessor_table_decoded_previous_scale * S ((S (bcf_predecessor_bcbrdb_predecessor_table)) * bcf_row_scale_scale_bcbrdb_predecessor) + (bcf_previous_scale_bcbrdb_predecessor_table))) /\ (forall bcf_index_bcbrdb_predecessor_table_row_step. (exists bcf_lt_gap_bcbrdb_predecessor_table_row_step_bound. bcf_lt_gap_bcbrdb_predecessor_table_row_step_bound + S (bcf_index_bcbrdb_predecessor_table_row_step) = S (n + n)) -> exists bcf_value_bcbrdb_predecessor_table_row_step. ((((exists bcf_height_bcbrdb_predecessor_table_row_step_entry. bcf_height_bcbrdb_predecessor_table_row_step_entry + S (bcf_value_bcbrdb_predecessor_table_row_step) = S ((S (bcf_index_bcbrdb_predecessor_table_row_step)) * bcf_row_scale_bcbrdb_predecessor_table)) /\ exists bcf_quotient_bcbrdb_predecessor_table_row_step_entry. bcf_row_code_bcbrdb_predecessor_table = bcf_quotient_bcbrdb_predecessor_table_row_step_entry * S ((S (bcf_index_bcbrdb_predecessor_table_row_step)) * bcf_row_scale_bcbrdb_predecessor_table) + (bcf_value_bcbrdb_predecessor_table_row_step))) /\ ((bcf_index_bcbrdb_predecessor_table_row_step = 0 /\ bcf_value_bcbrdb_predecessor_table_row_step = 1) \/ exists bcf_predecessor_bcbrdb_predecessor_table_row_step bcf_left_bcbrdb_predecessor_table_row_step bcf_right_bcbrdb_predecessor_table_row_step. bcf_index_bcbrdb_predecessor_table_row_step = S bcf_predecessor_bcbrdb_predecessor_table_row_step /\ ((((exists bcf_height_bcbrdb_predecessor_table_row_step_previous_left. bcf_height_bcbrdb_predecessor_table_row_step_previous_left + S (bcf_left_bcbrdb_predecessor_table_row_step) = S ((S (bcf_predecessor_bcbrdb_predecessor_table_row_step)) * bcf_previous_scale_bcbrdb_predecessor_table)) /\ exists bcf_quotient_bcbrdb_predecessor_table_row_step_previous_left. bcf_previous_code_bcbrdb_predecessor_table = bcf_quotient_bcbrdb_predecessor_table_row_step_previous_left * S ((S (bcf_predecessor_bcbrdb_predecessor_table_row_step)) * bcf_previous_scale_bcbrdb_predecessor_table) + (bcf_left_bcbrdb_predecessor_table_row_step))) /\ ((((exists bcf_height_bcbrdb_predecessor_table_row_step_previous_right. bcf_height_bcbrdb_predecessor_table_row_step_previous_right + S (bcf_right_bcbrdb_predecessor_table_row_step) = S ((S (S (bcf_predecessor_bcbrdb_predecessor_table_row_step))) * bcf_previous_scale_bcbrdb_predecessor_table)) /\ exists bcf_quotient_bcbrdb_predecessor_table_row_step_previous_right. bcf_previous_code_bcbrdb_predecessor_table = bcf_quotient_bcbrdb_predecessor_table_row_step_previous_right * S ((S (S (bcf_predecessor_bcbrdb_predecessor_table_row_step))) * bcf_previous_scale_bcbrdb_predecessor_table) + (bcf_right_bcbrdb_predecessor_table_row_step))) /\ bcf_value_bcbrdb_predecessor_table_row_step = bcf_left_bcbrdb_predecessor_table_row_step + bcf_right_bcbrdb_predecessor_table_row_step))))))))))) /\ ((((exists bcf_height_bcbrdb_predecessor_decoded_row_code. bcf_height_bcbrdb_predecessor_decoded_row_code + S (bcf_row_code_bcbrdb_predecessor) = S ((S (n + n)) * bcf_row_code_scale_bcbrdb_predecessor)) /\ exists bcf_quotient_bcbrdb_predecessor_decoded_row_code. bcf_row_code_code_bcbrdb_predecessor = bcf_quotient_bcbrdb_predecessor_decoded_row_code * S ((S (n + n)) * bcf_row_code_scale_bcbrdb_predecessor) + (bcf_row_code_bcbrdb_predecessor))) /\ ((((exists bcf_height_bcbrdb_predecessor_decoded_row_scale. bcf_height_bcbrdb_predecessor_decoded_row_scale + S (bcf_row_scale_bcbrdb_predecessor) = S ((S (n + n)) * bcf_row_scale_scale_bcbrdb_predecessor)) /\ exists bcf_quotient_bcbrdb_predecessor_decoded_row_scale. bcf_row_scale_code_bcbrdb_predecessor = bcf_quotient_bcbrdb_predecessor_decoded_row_scale * S ((S (n + n)) * bcf_row_scale_scale_bcbrdb_predecessor) + (bcf_row_scale_bcbrdb_predecessor))) /\ (((exists bcf_height_bcbrdb_predecessor_decoded_value. bcf_height_bcbrdb_predecessor_decoded_value + S (c) = S ((S (n)) * bcf_row_scale_bcbrdb_predecessor)) /\ exists bcf_quotient_bcbrdb_predecessor_decoded_value. bcf_row_code_bcbrdb_predecessor = bcf_quotient_bcbrdb_predecessor_decoded_value * S ((S (n)) * bcf_row_scale_bcbrdb_predecessor) + (c))))))))) -> (((exists bcf_lt_gap_bcbrdb_successor_out_of_range. bcf_lt_gap_bcbrdb_successor_out_of_range + S (S n + S n) = S n) /\ d = 0) \/ ((exists bcf_le_gap_bcbrdb_successor_in_range. bcf_le_gap_bcbrdb_successor_in_range + (S n) = S n + S n) /\ (exists bcf_row_code_code_bcbrdb_successor bcf_row_code_scale_bcbrdb_successor bcf_row_scale_code_bcbrdb_successor bcf_row_scale_scale_bcbrdb_successor bcf_row_code_bcbrdb_successor bcf_row_scale_bcbrdb_successor. ((forall bcf_row_index_bcbrdb_successor_table. (exists bcf_lt_gap_bcbrdb_successor_table_row_bound. bcf_lt_gap_bcbrdb_successor_table_row_bound + S (bcf_row_index_bcbrdb_successor_table) = S (S n + S n)) -> exists bcf_row_code_bcbrdb_successor_table bcf_row_scale_bcbrdb_successor_table. ((((exists bcf_height_bcbrdb_successor_table_decoded_row_code. bcf_height_bcbrdb_successor_table_decoded_row_code + S (bcf_row_code_bcbrdb_successor_table) = S ((S (bcf_row_index_bcbrdb_successor_table)) * bcf_row_code_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_table_decoded_row_code. bcf_row_code_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_table_decoded_row_code * S ((S (bcf_row_index_bcbrdb_successor_table)) * bcf_row_code_scale_bcbrdb_successor) + (bcf_row_code_bcbrdb_successor_table))) /\ ((((exists bcf_height_bcbrdb_successor_table_decoded_row_scale. bcf_height_bcbrdb_successor_table_decoded_row_scale + S (bcf_row_scale_bcbrdb_successor_table) = S ((S (bcf_row_index_bcbrdb_successor_table)) * bcf_row_scale_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_table_decoded_row_scale. bcf_row_scale_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_table_decoded_row_scale * S ((S (bcf_row_index_bcbrdb_successor_table)) * bcf_row_scale_scale_bcbrdb_successor) + (bcf_row_scale_bcbrdb_successor_table))) /\ ((bcf_row_index_bcbrdb_successor_table = 0 /\ (forall bcf_index_bcbrdb_successor_table_zero_row. (exists bcf_lt_gap_bcbrdb_successor_table_zero_row_bound. bcf_lt_gap_bcbrdb_successor_table_zero_row_bound + S (bcf_index_bcbrdb_successor_table_zero_row) = S (S n + S n)) -> exists bcf_value_bcbrdb_successor_table_zero_row. ((((exists bcf_height_bcbrdb_successor_table_zero_row_entry. bcf_height_bcbrdb_successor_table_zero_row_entry + S (bcf_value_bcbrdb_successor_table_zero_row) = S ((S (bcf_index_bcbrdb_successor_table_zero_row)) * bcf_row_scale_bcbrdb_successor_table)) /\ exists bcf_quotient_bcbrdb_successor_table_zero_row_entry. bcf_row_code_bcbrdb_successor_table = bcf_quotient_bcbrdb_successor_table_zero_row_entry * S ((S (bcf_index_bcbrdb_successor_table_zero_row)) * bcf_row_scale_bcbrdb_successor_table) + (bcf_value_bcbrdb_successor_table_zero_row))) /\ ((bcf_index_bcbrdb_successor_table_zero_row = 0 /\ bcf_value_bcbrdb_successor_table_zero_row = 1) \/ exists bcf_predecessor_bcbrdb_successor_table_zero_row. bcf_index_bcbrdb_successor_table_zero_row = S bcf_predecessor_bcbrdb_successor_table_zero_row /\ bcf_value_bcbrdb_successor_table_zero_row = 0)))) \/ exists bcf_predecessor_bcbrdb_successor_table bcf_previous_code_bcbrdb_successor_table bcf_previous_scale_bcbrdb_successor_table. bcf_row_index_bcbrdb_successor_table = S bcf_predecessor_bcbrdb_successor_table /\ ((((exists bcf_height_bcbrdb_successor_table_decoded_previous_code. bcf_height_bcbrdb_successor_table_decoded_previous_code + S (bcf_previous_code_bcbrdb_successor_table) = S ((S (bcf_predecessor_bcbrdb_successor_table)) * bcf_row_code_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_table_decoded_previous_code. bcf_row_code_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_table_decoded_previous_code * S ((S (bcf_predecessor_bcbrdb_successor_table)) * bcf_row_code_scale_bcbrdb_successor) + (bcf_previous_code_bcbrdb_successor_table))) /\ ((((exists bcf_height_bcbrdb_successor_table_decoded_previous_scale. bcf_height_bcbrdb_successor_table_decoded_previous_scale + S (bcf_previous_scale_bcbrdb_successor_table) = S ((S (bcf_predecessor_bcbrdb_successor_table)) * bcf_row_scale_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_table_decoded_previous_scale. bcf_row_scale_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_table_decoded_previous_scale * S ((S (bcf_predecessor_bcbrdb_successor_table)) * bcf_row_scale_scale_bcbrdb_successor) + (bcf_previous_scale_bcbrdb_successor_table))) /\ (forall bcf_index_bcbrdb_successor_table_row_step. (exists bcf_lt_gap_bcbrdb_successor_table_row_step_bound. bcf_lt_gap_bcbrdb_successor_table_row_step_bound + S (bcf_index_bcbrdb_successor_table_row_step) = S (S n + S n)) -> exists bcf_value_bcbrdb_successor_table_row_step. ((((exists bcf_height_bcbrdb_successor_table_row_step_entry. bcf_height_bcbrdb_successor_table_row_step_entry + S (bcf_value_bcbrdb_successor_table_row_step) = S ((S (bcf_index_bcbrdb_successor_table_row_step)) * bcf_row_scale_bcbrdb_successor_table)) /\ exists bcf_quotient_bcbrdb_successor_table_row_step_entry. bcf_row_code_bcbrdb_successor_table = bcf_quotient_bcbrdb_successor_table_row_step_entry * S ((S (bcf_index_bcbrdb_successor_table_row_step)) * bcf_row_scale_bcbrdb_successor_table) + (bcf_value_bcbrdb_successor_table_row_step))) /\ ((bcf_index_bcbrdb_successor_table_row_step = 0 /\ bcf_value_bcbrdb_successor_table_row_step = 1) \/ exists bcf_predecessor_bcbrdb_successor_table_row_step bcf_left_bcbrdb_successor_table_row_step bcf_right_bcbrdb_successor_table_row_step. bcf_index_bcbrdb_successor_table_row_step = S bcf_predecessor_bcbrdb_successor_table_row_step /\ ((((exists bcf_height_bcbrdb_successor_table_row_step_previous_left. bcf_height_bcbrdb_successor_table_row_step_previous_left + S (bcf_left_bcbrdb_successor_table_row_step) = S ((S (bcf_predecessor_bcbrdb_successor_table_row_step)) * bcf_previous_scale_bcbrdb_successor_table)) /\ exists bcf_quotient_bcbrdb_successor_table_row_step_previous_left. bcf_previous_code_bcbrdb_successor_table = bcf_quotient_bcbrdb_successor_table_row_step_previous_left * S ((S (bcf_predecessor_bcbrdb_successor_table_row_step)) * bcf_previous_scale_bcbrdb_successor_table) + (bcf_left_bcbrdb_successor_table_row_step))) /\ ((((exists bcf_height_bcbrdb_successor_table_row_step_previous_right. bcf_height_bcbrdb_successor_table_row_step_previous_right + S (bcf_right_bcbrdb_successor_table_row_step) = S ((S (S (bcf_predecessor_bcbrdb_successor_table_row_step))) * bcf_previous_scale_bcbrdb_successor_table)) /\ exists bcf_quotient_bcbrdb_successor_table_row_step_previous_right. bcf_previous_code_bcbrdb_successor_table = bcf_quotient_bcbrdb_successor_table_row_step_previous_right * S ((S (S (bcf_predecessor_bcbrdb_successor_table_row_step))) * bcf_previous_scale_bcbrdb_successor_table) + (bcf_right_bcbrdb_successor_table_row_step))) /\ bcf_value_bcbrdb_successor_table_row_step = bcf_left_bcbrdb_successor_table_row_step + bcf_right_bcbrdb_successor_table_row_step))))))))))) /\ ((((exists bcf_height_bcbrdb_successor_decoded_row_code. bcf_height_bcbrdb_successor_decoded_row_code + S (bcf_row_code_bcbrdb_successor) = S ((S (S n + S n)) * bcf_row_code_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_decoded_row_code. bcf_row_code_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_decoded_row_code * S ((S (S n + S n)) * bcf_row_code_scale_bcbrdb_successor) + (bcf_row_code_bcbrdb_successor))) /\ ((((exists bcf_height_bcbrdb_successor_decoded_row_scale. bcf_height_bcbrdb_successor_decoded_row_scale + S (bcf_row_scale_bcbrdb_successor) = S ((S (S n + S n)) * bcf_row_scale_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_decoded_row_scale. bcf_row_scale_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_decoded_row_scale * S ((S (S n + S n)) * bcf_row_scale_scale_bcbrdb_successor) + (bcf_row_scale_bcbrdb_successor))) /\ (((exists bcf_height_bcbrdb_successor_decoded_value. bcf_height_bcbrdb_successor_decoded_value + S (d) = S ((S (S n)) * bcf_row_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_decoded_value. bcf_row_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_decoded_value * S ((S (S n)) * bcf_row_scale_bcbrdb_successor) + (d))))))))) -> S n * d = (2 * S (n + n)) * c) /\ (forall n d m. (((exists bcf_lt_gap_bcbrdb_successor_out_of_range. bcf_lt_gap_bcbrdb_successor_out_of_range + S (S n + S n) = S n) /\ d = 0) \/ ((exists bcf_le_gap_bcbrdb_successor_in_range. bcf_le_gap_bcbrdb_successor_in_range + (S n) = S n + S n) /\ (exists bcf_row_code_code_bcbrdb_successor bcf_row_code_scale_bcbrdb_successor bcf_row_scale_code_bcbrdb_successor bcf_row_scale_scale_bcbrdb_successor bcf_row_code_bcbrdb_successor bcf_row_scale_bcbrdb_successor. ((forall bcf_row_index_bcbrdb_successor_table. (exists bcf_lt_gap_bcbrdb_successor_table_row_bound. bcf_lt_gap_bcbrdb_successor_table_row_bound + S (bcf_row_index_bcbrdb_successor_table) = S (S n + S n)) -> exists bcf_row_code_bcbrdb_successor_table bcf_row_scale_bcbrdb_successor_table. ((((exists bcf_height_bcbrdb_successor_table_decoded_row_code. bcf_height_bcbrdb_successor_table_decoded_row_code + S (bcf_row_code_bcbrdb_successor_table) = S ((S (bcf_row_index_bcbrdb_successor_table)) * bcf_row_code_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_table_decoded_row_code. bcf_row_code_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_table_decoded_row_code * S ((S (bcf_row_index_bcbrdb_successor_table)) * bcf_row_code_scale_bcbrdb_successor) + (bcf_row_code_bcbrdb_successor_table))) /\ ((((exists bcf_height_bcbrdb_successor_table_decoded_row_scale. bcf_height_bcbrdb_successor_table_decoded_row_scale + S (bcf_row_scale_bcbrdb_successor_table) = S ((S (bcf_row_index_bcbrdb_successor_table)) * bcf_row_scale_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_table_decoded_row_scale. bcf_row_scale_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_table_decoded_row_scale * S ((S (bcf_row_index_bcbrdb_successor_table)) * bcf_row_scale_scale_bcbrdb_successor) + (bcf_row_scale_bcbrdb_successor_table))) /\ ((bcf_row_index_bcbrdb_successor_table = 0 /\ (forall bcf_index_bcbrdb_successor_table_zero_row. (exists bcf_lt_gap_bcbrdb_successor_table_zero_row_bound. bcf_lt_gap_bcbrdb_successor_table_zero_row_bound + S (bcf_index_bcbrdb_successor_table_zero_row) = S (S n + S n)) -> exists bcf_value_bcbrdb_successor_table_zero_row. ((((exists bcf_height_bcbrdb_successor_table_zero_row_entry. bcf_height_bcbrdb_successor_table_zero_row_entry + S (bcf_value_bcbrdb_successor_table_zero_row) = S ((S (bcf_index_bcbrdb_successor_table_zero_row)) * bcf_row_scale_bcbrdb_successor_table)) /\ exists bcf_quotient_bcbrdb_successor_table_zero_row_entry. bcf_row_code_bcbrdb_successor_table = bcf_quotient_bcbrdb_successor_table_zero_row_entry * S ((S (bcf_index_bcbrdb_successor_table_zero_row)) * bcf_row_scale_bcbrdb_successor_table) + (bcf_value_bcbrdb_successor_table_zero_row))) /\ ((bcf_index_bcbrdb_successor_table_zero_row = 0 /\ bcf_value_bcbrdb_successor_table_zero_row = 1) \/ exists bcf_predecessor_bcbrdb_successor_table_zero_row. bcf_index_bcbrdb_successor_table_zero_row = S bcf_predecessor_bcbrdb_successor_table_zero_row /\ bcf_value_bcbrdb_successor_table_zero_row = 0)))) \/ exists bcf_predecessor_bcbrdb_successor_table bcf_previous_code_bcbrdb_successor_table bcf_previous_scale_bcbrdb_successor_table. bcf_row_index_bcbrdb_successor_table = S bcf_predecessor_bcbrdb_successor_table /\ ((((exists bcf_height_bcbrdb_successor_table_decoded_previous_code. bcf_height_bcbrdb_successor_table_decoded_previous_code + S (bcf_previous_code_bcbrdb_successor_table) = S ((S (bcf_predecessor_bcbrdb_successor_table)) * bcf_row_code_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_table_decoded_previous_code. bcf_row_code_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_table_decoded_previous_code * S ((S (bcf_predecessor_bcbrdb_successor_table)) * bcf_row_code_scale_bcbrdb_successor) + (bcf_previous_code_bcbrdb_successor_table))) /\ ((((exists bcf_height_bcbrdb_successor_table_decoded_previous_scale. bcf_height_bcbrdb_successor_table_decoded_previous_scale + S (bcf_previous_scale_bcbrdb_successor_table) = S ((S (bcf_predecessor_bcbrdb_successor_table)) * bcf_row_scale_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_table_decoded_previous_scale. bcf_row_scale_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_table_decoded_previous_scale * S ((S (bcf_predecessor_bcbrdb_successor_table)) * bcf_row_scale_scale_bcbrdb_successor) + (bcf_previous_scale_bcbrdb_successor_table))) /\ (forall bcf_index_bcbrdb_successor_table_row_step. (exists bcf_lt_gap_bcbrdb_successor_table_row_step_bound. bcf_lt_gap_bcbrdb_successor_table_row_step_bound + S (bcf_index_bcbrdb_successor_table_row_step) = S (S n + S n)) -> exists bcf_value_bcbrdb_successor_table_row_step. ((((exists bcf_height_bcbrdb_successor_table_row_step_entry. bcf_height_bcbrdb_successor_table_row_step_entry + S (bcf_value_bcbrdb_successor_table_row_step) = S ((S (bcf_index_bcbrdb_successor_table_row_step)) * bcf_row_scale_bcbrdb_successor_table)) /\ exists bcf_quotient_bcbrdb_successor_table_row_step_entry. bcf_row_code_bcbrdb_successor_table = bcf_quotient_bcbrdb_successor_table_row_step_entry * S ((S (bcf_index_bcbrdb_successor_table_row_step)) * bcf_row_scale_bcbrdb_successor_table) + (bcf_value_bcbrdb_successor_table_row_step))) /\ ((bcf_index_bcbrdb_successor_table_row_step = 0 /\ bcf_value_bcbrdb_successor_table_row_step = 1) \/ exists bcf_predecessor_bcbrdb_successor_table_row_step bcf_left_bcbrdb_successor_table_row_step bcf_right_bcbrdb_successor_table_row_step. bcf_index_bcbrdb_successor_table_row_step = S bcf_predecessor_bcbrdb_successor_table_row_step /\ ((((exists bcf_height_bcbrdb_successor_table_row_step_previous_left. bcf_height_bcbrdb_successor_table_row_step_previous_left + S (bcf_left_bcbrdb_successor_table_row_step) = S ((S (bcf_predecessor_bcbrdb_successor_table_row_step)) * bcf_previous_scale_bcbrdb_successor_table)) /\ exists bcf_quotient_bcbrdb_successor_table_row_step_previous_left. bcf_previous_code_bcbrdb_successor_table = bcf_quotient_bcbrdb_successor_table_row_step_previous_left * S ((S (bcf_predecessor_bcbrdb_successor_table_row_step)) * bcf_previous_scale_bcbrdb_successor_table) + (bcf_left_bcbrdb_successor_table_row_step))) /\ ((((exists bcf_height_bcbrdb_successor_table_row_step_previous_right. bcf_height_bcbrdb_successor_table_row_step_previous_right + S (bcf_right_bcbrdb_successor_table_row_step) = S ((S (S (bcf_predecessor_bcbrdb_successor_table_row_step))) * bcf_previous_scale_bcbrdb_successor_table)) /\ exists bcf_quotient_bcbrdb_successor_table_row_step_previous_right. bcf_previous_code_bcbrdb_successor_table = bcf_quotient_bcbrdb_successor_table_row_step_previous_right * S ((S (S (bcf_predecessor_bcbrdb_successor_table_row_step))) * bcf_previous_scale_bcbrdb_successor_table) + (bcf_right_bcbrdb_successor_table_row_step))) /\ bcf_value_bcbrdb_successor_table_row_step = bcf_left_bcbrdb_successor_table_row_step + bcf_right_bcbrdb_successor_table_row_step))))))))))) /\ ((((exists bcf_height_bcbrdb_successor_decoded_row_code. bcf_height_bcbrdb_successor_decoded_row_code + S (bcf_row_code_bcbrdb_successor) = S ((S (S n + S n)) * bcf_row_code_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_decoded_row_code. bcf_row_code_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_decoded_row_code * S ((S (S n + S n)) * bcf_row_code_scale_bcbrdb_successor) + (bcf_row_code_bcbrdb_successor))) /\ ((((exists bcf_height_bcbrdb_successor_decoded_row_scale. bcf_height_bcbrdb_successor_decoded_row_scale + S (bcf_row_scale_bcbrdb_successor) = S ((S (S n + S n)) * bcf_row_scale_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_decoded_row_scale. bcf_row_scale_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_decoded_row_scale * S ((S (S n + S n)) * bcf_row_scale_scale_bcbrdb_successor) + (bcf_row_scale_bcbrdb_successor))) /\ (((exists bcf_height_bcbrdb_successor_decoded_value. bcf_height_bcbrdb_successor_decoded_value + S (d) = S ((S (S n)) * bcf_row_scale_bcbrdb_successor)) /\ exists bcf_quotient_bcbrdb_successor_decoded_value. bcf_row_code_bcbrdb_successor = bcf_quotient_bcbrdb_successor_decoded_value * S ((S (S n)) * bcf_row_scale_bcbrdb_successor) + (d))))))))) -> (((exists bcf_lt_gap_bcbrdb_middle_out_of_range. bcf_lt_gap_bcbrdb_middle_out_of_range + S (S (n + n)) = n) /\ m = 0) \/ ((exists bcf_le_gap_bcbrdb_middle_in_range. bcf_le_gap_bcbrdb_middle_in_range + (n) = S (n + n)) /\ (exists bcf_row_code_code_bcbrdb_middle bcf_row_code_scale_bcbrdb_middle bcf_row_scale_code_bcbrdb_middle bcf_row_scale_scale_bcbrdb_middle bcf_row_code_bcbrdb_middle bcf_row_scale_bcbrdb_middle. ((forall bcf_row_index_bcbrdb_middle_table. (exists bcf_lt_gap_bcbrdb_middle_table_row_bound. bcf_lt_gap_bcbrdb_middle_table_row_bound + S (bcf_row_index_bcbrdb_middle_table) = S (S (n + n))) -> exists bcf_row_code_bcbrdb_middle_table bcf_row_scale_bcbrdb_middle_table. ((((exists bcf_height_bcbrdb_middle_table_decoded_row_code. bcf_height_bcbrdb_middle_table_decoded_row_code + S (bcf_row_code_bcbrdb_middle_table) = S ((S (bcf_row_index_bcbrdb_middle_table)) * bcf_row_code_scale_bcbrdb_middle)) /\ exists bcf_quotient_bcbrdb_middle_table_decoded_row_code. bcf_row_code_code_bcbrdb_middle = bcf_quotient_bcbrdb_middle_table_decoded_row_code * S ((S (bcf_row_index_bcbrdb_middle_table)) * bcf_row_code_scale_bcbrdb_middle) + (bcf_row_code_bcbrdb_middle_table))) /\ ((((exists bcf_height_bcbrdb_middle_table_decoded_row_scale. bcf_height_bcbrdb_middle_table_decoded_row_scale + S (bcf_row_scale_bcbrdb_middle_table) = S ((S (bcf_row_index_bcbrdb_middle_table)) * bcf_row_scale_scale_bcbrdb_middle)) /\ exists bcf_quotient_bcbrdb_middle_table_decoded_row_scale. bcf_row_scale_code_bcbrdb_middle = bcf_quotient_bcbrdb_middle_table_decoded_row_scale * S ((S (bcf_row_index_bcbrdb_middle_table)) * bcf_row_scale_scale_bcbrdb_middle) + (bcf_row_scale_bcbrdb_middle_table))) /\ ((bcf_row_index_bcbrdb_middle_table = 0 /\ (forall bcf_index_bcbrdb_middle_table_zero_row. (exists bcf_lt_gap_bcbrdb_middle_table_zero_row_bound. bcf_lt_gap_bcbrdb_middle_table_zero_row_bound + S (bcf_index_bcbrdb_middle_table_zero_row) = S (S (n + n))) -> exists bcf_value_bcbrdb_middle_table_zero_row. ((((exists bcf_height_bcbrdb_middle_table_zero_row_entry. bcf_height_bcbrdb_middle_table_zero_row_entry + S (bcf_value_bcbrdb_middle_table_zero_row) = S ((S (bcf_index_bcbrdb_middle_table_zero_row)) * bcf_row_scale_bcbrdb_middle_table)) /\ exists bcf_quotient_bcbrdb_middle_table_zero_row_entry. bcf_row_code_bcbrdb_middle_table = bcf_quotient_bcbrdb_middle_table_zero_row_entry * S ((S (bcf_index_bcbrdb_middle_table_zero_row)) * bcf_row_scale_bcbrdb_middle_table) + (bcf_value_bcbrdb_middle_table_zero_row))) /\ ((bcf_index_bcbrdb_middle_table_zero_row = 0 /\ bcf_value_bcbrdb_middle_table_zero_row = 1) \/ exists bcf_predecessor_bcbrdb_middle_table_zero_row. bcf_index_bcbrdb_middle_table_zero_row = S bcf_predecessor_bcbrdb_middle_table_zero_row /\ bcf_value_bcbrdb_middle_table_zero_row = 0)))) \/ exists bcf_predecessor_bcbrdb_middle_table bcf_previous_code_bcbrdb_middle_table bcf_previous_scale_bcbrdb_middle_table. bcf_row_index_bcbrdb_middle_table = S bcf_predecessor_bcbrdb_middle_table /\ ((((exists bcf_height_bcbrdb_middle_table_decoded_previous_code. bcf_height_bcbrdb_middle_table_decoded_previous_code + S (bcf_previous_code_bcbrdb_middle_table) = S ((S (bcf_predecessor_bcbrdb_middle_table)) * bcf_row_code_scale_bcbrdb_middle)) /\ exists bcf_quotient_bcbrdb_middle_table_decoded_previous_code. bcf_row_code_code_bcbrdb_middle = bcf_quotient_bcbrdb_middle_table_decoded_previous_code * S ((S (bcf_predecessor_bcbrdb_middle_table)) * bcf_row_code_scale_bcbrdb_middle) + (bcf_previous_code_bcbrdb_middle_table))) /\ ((((exists bcf_height_bcbrdb_middle_table_decoded_previous_scale. bcf_height_bcbrdb_middle_table_decoded_previous_scale + S (bcf_previous_scale_bcbrdb_middle_table) = S ((S (bcf_predecessor_bcbrdb_middle_table)) * bcf_row_scale_scale_bcbrdb_middle)) /\ exists bcf_quotient_bcbrdb_middle_table_decoded_previous_scale. bcf_row_scale_code_bcbrdb_middle = bcf_quotient_bcbrdb_middle_table_decoded_previous_scale * S ((S (bcf_predecessor_bcbrdb_middle_table)) * bcf_row_scale_scale_bcbrdb_middle) + (bcf_previous_scale_bcbrdb_middle_table))) /\ (forall bcf_index_bcbrdb_middle_table_row_step. (exists bcf_lt_gap_bcbrdb_middle_table_row_step_bound. bcf_lt_gap_bcbrdb_middle_table_row_step_bound + S (bcf_index_bcbrdb_middle_table_row_step) = S (S (n + n))) -> exists bcf_value_bcbrdb_middle_table_row_step. ((((exists bcf_height_bcbrdb_middle_table_row_step_entry. bcf_height_bcbrdb_middle_table_row_step_entry + S (bcf_value_bcbrdb_middle_table_row_step) = S ((S (bcf_index_bcbrdb_middle_table_row_step)) * bcf_row_scale_bcbrdb_middle_table)) /\ exists bcf_quotient_bcbrdb_middle_table_row_step_entry. bcf_row_code_bcbrdb_middle_table = bcf_quotient_bcbrdb_middle_table_row_step_entry * S ((S (bcf_index_bcbrdb_middle_table_row_step)) * bcf_row_scale_bcbrdb_middle_table) + (bcf_value_bcbrdb_middle_table_row_step))) /\ ((bcf_index_bcbrdb_middle_table_row_step = 0 /\ bcf_value_bcbrdb_middle_table_row_step = 1) \/ exists bcf_predecessor_bcbrdb_middle_table_row_step bcf_left_bcbrdb_middle_table_row_step bcf_right_bcbrdb_middle_table_row_step. bcf_index_bcbrdb_middle_table_row_step = S bcf_predecessor_bcbrdb_middle_table_row_step /\ ((((exists bcf_height_bcbrdb_middle_table_row_step_previous_left. bcf_height_bcbrdb_middle_table_row_step_previous_left + S (bcf_left_bcbrdb_middle_table_row_step) = S ((S (bcf_predecessor_bcbrdb_middle_table_row_step)) * bcf_previous_scale_bcbrdb_middle_table)) /\ exists bcf_quotient_bcbrdb_middle_table_row_step_previous_left. bcf_previous_code_bcbrdb_middle_table = bcf_quotient_bcbrdb_middle_table_row_step_previous_left * S ((S (bcf_predecessor_bcbrdb_middle_table_row_step)) * bcf_previous_scale_bcbrdb_middle_table) + (bcf_left_bcbrdb_middle_table_row_step))) /\ ((((exists bcf_height_bcbrdb_middle_table_row_step_previous_right. bcf_height_bcbrdb_middle_table_row_step_previous_right + S (bcf_right_bcbrdb_middle_table_row_step) = S ((S (S (bcf_predecessor_bcbrdb_middle_table_row_step))) * bcf_previous_scale_bcbrdb_middle_table)) /\ exists bcf_quotient_bcbrdb_middle_table_row_step_previous_right. bcf_previous_code_bcbrdb_middle_table = bcf_quotient_bcbrdb_middle_table_row_step_previous_right * S ((S (S (bcf_predecessor_bcbrdb_middle_table_row_step))) * bcf_previous_scale_bcbrdb_middle_table) + (bcf_right_bcbrdb_middle_table_row_step))) /\ bcf_value_bcbrdb_middle_table_row_step = bcf_left_bcbrdb_middle_table_row_step + bcf_right_bcbrdb_middle_table_row_step))))))))))) /\ ((((exists bcf_height_bcbrdb_middle_decoded_row_code. bcf_height_bcbrdb_middle_decoded_row_code + S (bcf_row_code_bcbrdb_middle) = S ((S (S (n + n))) * bcf_row_code_scale_bcbrdb_middle)) /\ exists bcf_quotient_bcbrdb_middle_decoded_row_code. bcf_row_code_code_bcbrdb_middle = bcf_quotient_bcbrdb_middle_decoded_row_code * S ((S (S (n + n))) * bcf_row_code_scale_bcbrdb_middle) + (bcf_row_code_bcbrdb_middle))) /\ ((((exists bcf_height_bcbrdb_middle_decoded_row_scale. bcf_height_bcbrdb_middle_decoded_row_scale + S (bcf_row_scale_bcbrdb_middle) = S ((S (S (n + n))) * bcf_row_scale_scale_bcbrdb_middle)) /\ exists bcf_quotient_bcbrdb_middle_decoded_row_scale. bcf_row_scale_code_bcbrdb_middle = bcf_quotient_bcbrdb_middle_decoded_row_scale * S ((S (S (n + n))) * bcf_row_scale_scale_bcbrdb_middle) + (bcf_row_scale_bcbrdb_middle))) /\ (((exists bcf_height_bcbrdb_middle_decoded_value. bcf_height_bcbrdb_middle_decoded_value + S (m) = S ((S (n)) * bcf_row_scale_bcbrdb_middle)) /\ exists bcf_quotient_bcbrdb_middle_decoded_value. bcf_row_code_bcbrdb_middle = bcf_quotient_bcbrdb_middle_decoded_value * S ((S (n)) * bcf_row_scale_bcbrdb_middle) + (m))))))))) -> d = m + m))) /\ (forall n. exists z. (((exists bcf_lt_gap_bcbsuo_exists_out_of_range. bcf_lt_gap_bcbsuo_exists_out_of_range + S (n + n) = n) /\ z = 0) \/ ((exists bcf_le_gap_bcbsuo_exists_in_range. bcf_le_gap_bcbsuo_exists_in_range + (n) = n + n) /\ (exists bcf_row_code_code_bcbsuo_exists bcf_row_code_scale_bcbsuo_exists bcf_row_scale_code_bcbsuo_exists bcf_row_scale_scale_bcbsuo_exists bcf_row_code_bcbsuo_exists bcf_row_scale_bcbsuo_exists. ((forall bcf_row_index_bcbsuo_exists_table. (exists bcf_lt_gap_bcbsuo_exists_table_row_bound. bcf_lt_gap_bcbsuo_exists_table_row_bound + S (bcf_row_index_bcbsuo_exists_table) = S (n + n)) -> exists bcf_row_code_bcbsuo_exists_table bcf_row_scale_bcbsuo_exists_table. ((((exists bcf_height_bcbsuo_exists_table_decoded_row_code. bcf_height_bcbsuo_exists_table_decoded_row_code + S (bcf_row_code_bcbsuo_exists_table) = S ((S (bcf_row_index_bcbsuo_exists_table)) * bcf_row_code_scale_bcbsuo_exists)) /\ exists bcf_quotient_bcbsuo_exists_table_decoded_row_code. bcf_row_code_code_bcbsuo_exists = bcf_quotient_bcbsuo_exists_table_decoded_row_code * S ((S (bcf_row_index_bcbsuo_exists_table)) * bcf_row_code_scale_bcbsuo_exists) + (bcf_row_code_bcbsuo_exists_table))) /\ ((((exists bcf_height_bcbsuo_exists_table_decoded_row_scale. bcf_height_bcbsuo_exists_table_decoded_row_scale + S (bcf_row_scale_bcbsuo_exists_table) = S ((S (bcf_row_index_bcbsuo_exists_table)) * bcf_row_scale_scale_bcbsuo_exists)) /\ exists bcf_quotient_bcbsuo_exists_table_decoded_row_scale. bcf_row_scale_code_bcbsuo_exists = bcf_quotient_bcbsuo_exists_table_decoded_row_scale * S ((S (bcf_row_index_bcbsuo_exists_table)) * bcf_row_scale_scale_bcbsuo_exists) + (bcf_row_scale_bcbsuo_exists_table))) /\ ((bcf_row_index_bcbsuo_exists_table = 0 /\ (forall bcf_index_bcbsuo_exists_table_zero_row. (exists bcf_lt_gap_bcbsuo_exists_table_zero_row_bound. bcf_lt_gap_bcbsuo_exists_table_zero_row_bound + S (bcf_index_bcbsuo_exists_table_zero_row) = S (n + n)) -> exists bcf_value_bcbsuo_exists_table_zero_row. ((((exists bcf_height_bcbsuo_exists_table_zero_row_entry. bcf_height_bcbsuo_exists_table_zero_row_entry + S (bcf_value_bcbsuo_exists_table_zero_row) = S ((S (bcf_index_bcbsuo_exists_table_zero_row)) * bcf_row_scale_bcbsuo_exists_table)) /\ exists bcf_quotient_bcbsuo_exists_table_zero_row_entry. bcf_row_code_bcbsuo_exists_table = bcf_quotient_bcbsuo_exists_table_zero_row_entry * S ((S (bcf_index_bcbsuo_exists_table_zero_row)) * bcf_row_scale_bcbsuo_exists_table) + (bcf_value_bcbsuo_exists_table_zero_row))) /\ ((bcf_index_bcbsuo_exists_table_zero_row = 0 /\ bcf_value_bcbsuo_exists_table_zero_row = 1) \/ exists bcf_predecessor_bcbsuo_exists_table_zero_row. bcf_index_bcbsuo_exists_table_zero_row = S bcf_predecessor_bcbsuo_exists_table_zero_row /\ bcf_value_bcbsuo_exists_table_zero_row = 0)))) \/ exists bcf_predecessor_bcbsuo_exists_table bcf_previous_code_bcbsuo_exists_table bcf_previous_scale_bcbsuo_exists_table. bcf_row_index_bcbsuo_exists_table = S bcf_predecessor_bcbsuo_exists_table /\ ((((exists bcf_height_bcbsuo_exists_table_decoded_previous_code. bcf_height_bcbsuo_exists_table_decoded_previous_code + S (bcf_previous_code_bcbsuo_exists_table) = S ((S (bcf_predecessor_bcbsuo_exists_table)) * bcf_row_code_scale_bcbsuo_exists)) /\ exists bcf_quotient_bcbsuo_exists_table_decoded_previous_code. bcf_row_code_code_bcbsuo_exists = bcf_quotient_bcbsuo_exists_table_decoded_previous_code * S ((S (bcf_predecessor_bcbsuo_exists_table)) * bcf_row_code_scale_bcbsuo_exists) + (bcf_previous_code_bcbsuo_exists_table))) /\ ((((exists bcf_height_bcbsuo_exists_table_decoded_previous_scale. bcf_height_bcbsuo_exists_table_decoded_previous_scale + S (bcf_previous_scale_bcbsuo_exists_table) = S ((S (bcf_predecessor_bcbsuo_exists_table)) * bcf_row_scale_scale_bcbsuo_exists)) /\ exists bcf_quotient_bcbsuo_exists_table_decoded_previous_scale. bcf_row_scale_code_bcbsuo_exists = bcf_quotient_bcbsuo_exists_table_decoded_previous_scale * S ((S (bcf_predecessor_bcbsuo_exists_table)) * bcf_row_scale_scale_bcbsuo_exists) + (bcf_previous_scale_bcbsuo_exists_table))) /\ (forall bcf_index_bcbsuo_exists_table_row_step. (exists bcf_lt_gap_bcbsuo_exists_table_row_step_bound. bcf_lt_gap_bcbsuo_exists_table_row_step_bound + S (bcf_index_bcbsuo_exists_table_row_step) = S (n + n)) -> exists bcf_value_bcbsuo_exists_table_row_step. ((((exists bcf_height_bcbsuo_exists_table_row_step_entry. bcf_height_bcbsuo_exists_table_row_step_entry + S (bcf_value_bcbsuo_exists_table_row_step) = S ((S (bcf_index_bcbsuo_exists_table_row_step)) * bcf_row_scale_bcbsuo_exists_table)) /\ exists bcf_quotient_bcbsuo_exists_table_row_step_entry. bcf_row_code_bcbsuo_exists_table = bcf_quotient_bcbsuo_exists_table_row_step_entry * S ((S (bcf_index_bcbsuo_exists_table_row_step)) * bcf_row_scale_bcbsuo_exists_table) + (bcf_value_bcbsuo_exists_table_row_step))) /\ ((bcf_index_bcbsuo_exists_table_row_step = 0 /\ bcf_value_bcbsuo_exists_table_row_step = 1) \/ exists bcf_predecessor_bcbsuo_exists_table_row_step bcf_left_bcbsuo_exists_table_row_step bcf_right_bcbsuo_exists_table_row_step. bcf_index_bcbsuo_exists_table_row_step = S bcf_predecessor_bcbsuo_exists_table_row_step /\ ((((exists bcf_height_bcbsuo_exists_table_row_step_previous_left. bcf_height_bcbsuo_exists_table_row_step_previous_left + S (bcf_left_bcbsuo_exists_table_row_step) = S ((S (bcf_predecessor_bcbsuo_exists_table_row_step)) * bcf_previous_scale_bcbsuo_exists_table)) /\ exists bcf_quotient_bcbsuo_exists_table_row_step_previous_left. bcf_previous_code_bcbsuo_exists_table = bcf_quotient_bcbsuo_exists_table_row_step_previous_left * S ((S (bcf_predecessor_bcbsuo_exists_table_row_step)) * bcf_previous_scale_bcbsuo_exists_table) + (bcf_left_bcbsuo_exists_table_row_step))) /\ ((((exists bcf_height_bcbsuo_exists_table_row_step_previous_right. bcf_height_bcbsuo_exists_table_row_step_previous_right + S (bcf_right_bcbsuo_exists_table_row_step) = S ((S (S (bcf_predecessor_bcbsuo_exists_table_row_step))) * bcf_previous_scale_bcbsuo_exists_table)) /\ exists bcf_quotient_bcbsuo_exists_table_row_step_previous_right. bcf_previous_code_bcbsuo_exists_table = bcf_quotient_bcbsuo_exists_table_row_step_previous_right * S ((S (S (bcf_predecessor_bcbsuo_exists_table_row_step))) * bcf_previous_scale_bcbsuo_exists_table) + (bcf_right_bcbsuo_exists_table_row_step))) /\ bcf_value_bcbsuo_exists_table_row_step = bcf_left_bcbsuo_exists_table_row_step + bcf_right_bcbsuo_exists_table_row_step))))))))))) /\ ((((exists bcf_height_bcbsuo_exists_decoded_row_code. bcf_height_bcbsuo_exists_decoded_row_code + S (bcf_row_code_bcbsuo_exists) = S ((S (n + n)) * bcf_row_code_scale_bcbsuo_exists)) /\ exists bcf_quotient_bcbsuo_exists_decoded_row_code. bcf_row_code_code_bcbsuo_exists = bcf_quotient_bcbsuo_exists_decoded_row_code * S ((S (n + n)) * bcf_row_code_scale_bcbsuo_exists) + (bcf_row_code_bcbsuo_exists))) /\ ((((exists bcf_height_bcbsuo_exists_decoded_row_scale. bcf_height_bcbsuo_exists_decoded_row_scale + S (bcf_row_scale_bcbsuo_exists) = S ((S (n + n)) * bcf_row_scale_scale_bcbsuo_exists)) /\ exists bcf_quotient_bcbsuo_exists_decoded_row_scale. bcf_row_scale_code_bcbsuo_exists = bcf_quotient_bcbsuo_exists_decoded_row_scale * S ((S (n + n)) * bcf_row_scale_scale_bcbsuo_exists) + (bcf_row_scale_bcbsuo_exists))) /\ (((exists bcf_height_bcbsuo_exists_decoded_value. bcf_height_bcbsuo_exists_decoded_value + S (z) = S ((S (n)) * bcf_row_scale_bcbsuo_exists)) /\ exists bcf_quotient_bcbsuo_exists_decoded_value. bcf_row_code_bcbsuo_exists = bcf_quotient_bcbsuo_exists_decoded_value * S ((S (n)) * bcf_row_scale_bcbsuo_exists) + (z)))))))))))
  7. 0007exact central_binom_upper_support_package
  8. 0008cases hpackage
  9. 0009cases hpackage_left
  10. 0010have hcentral_exists : ∃ d. CentralBinom(S n,d)
    Exact native replay linehave hcentral_exists : exists d. (((exists bcf_lt_gap_bcomlfp_central_out_of_range. bcf_lt_gap_bcomlfp_central_out_of_range + S (S n + S n) = S n) /\ d = 0) \/ ((exists bcf_le_gap_bcomlfp_central_in_range. bcf_le_gap_bcomlfp_central_in_range + (S n) = S n + S n) /\ (exists bcf_row_code_code_bcomlfp_central bcf_row_code_scale_bcomlfp_central bcf_row_scale_code_bcomlfp_central bcf_row_scale_scale_bcomlfp_central bcf_row_code_bcomlfp_central bcf_row_scale_bcomlfp_central. ((forall bcf_row_index_bcomlfp_central_table. (exists bcf_lt_gap_bcomlfp_central_table_row_bound. bcf_lt_gap_bcomlfp_central_table_row_bound + S (bcf_row_index_bcomlfp_central_table) = S (S n + S n)) -> exists bcf_row_code_bcomlfp_central_table bcf_row_scale_bcomlfp_central_table. ((((exists bcf_height_bcomlfp_central_table_decoded_row_code. bcf_height_bcomlfp_central_table_decoded_row_code + S (bcf_row_code_bcomlfp_central_table) = S ((S (bcf_row_index_bcomlfp_central_table)) * bcf_row_code_scale_bcomlfp_central)) /\ exists bcf_quotient_bcomlfp_central_table_decoded_row_code. bcf_row_code_code_bcomlfp_central = bcf_quotient_bcomlfp_central_table_decoded_row_code * S ((S (bcf_row_index_bcomlfp_central_table)) * bcf_row_code_scale_bcomlfp_central) + (bcf_row_code_bcomlfp_central_table))) /\ ((((exists bcf_height_bcomlfp_central_table_decoded_row_scale. bcf_height_bcomlfp_central_table_decoded_row_scale + S (bcf_row_scale_bcomlfp_central_table) = S ((S (bcf_row_index_bcomlfp_central_table)) * bcf_row_scale_scale_bcomlfp_central)) /\ exists bcf_quotient_bcomlfp_central_table_decoded_row_scale. bcf_row_scale_code_bcomlfp_central = bcf_quotient_bcomlfp_central_table_decoded_row_scale * S ((S (bcf_row_index_bcomlfp_central_table)) * bcf_row_scale_scale_bcomlfp_central) + (bcf_row_scale_bcomlfp_central_table))) /\ ((bcf_row_index_bcomlfp_central_table = 0 /\ (forall bcf_index_bcomlfp_central_table_zero_row. (exists bcf_lt_gap_bcomlfp_central_table_zero_row_bound. bcf_lt_gap_bcomlfp_central_table_zero_row_bound + S (bcf_index_bcomlfp_central_table_zero_row) = S (S n + S n)) -> exists bcf_value_bcomlfp_central_table_zero_row. ((((exists bcf_height_bcomlfp_central_table_zero_row_entry. bcf_height_bcomlfp_central_table_zero_row_entry + S (bcf_value_bcomlfp_central_table_zero_row) = S ((S (bcf_index_bcomlfp_central_table_zero_row)) * bcf_row_scale_bcomlfp_central_table)) /\ exists bcf_quotient_bcomlfp_central_table_zero_row_entry. bcf_row_code_bcomlfp_central_table = bcf_quotient_bcomlfp_central_table_zero_row_entry * S ((S (bcf_index_bcomlfp_central_table_zero_row)) * bcf_row_scale_bcomlfp_central_table) + (bcf_value_bcomlfp_central_table_zero_row))) /\ ((bcf_index_bcomlfp_central_table_zero_row = 0 /\ bcf_value_bcomlfp_central_table_zero_row = 1) \/ exists bcf_predecessor_bcomlfp_central_table_zero_row. bcf_index_bcomlfp_central_table_zero_row = S bcf_predecessor_bcomlfp_central_table_zero_row /\ bcf_value_bcomlfp_central_table_zero_row = 0)))) \/ exists bcf_predecessor_bcomlfp_central_table bcf_previous_code_bcomlfp_central_table bcf_previous_scale_bcomlfp_central_table. bcf_row_index_bcomlfp_central_table = S bcf_predecessor_bcomlfp_central_table /\ ((((exists bcf_height_bcomlfp_central_table_decoded_previous_code. bcf_height_bcomlfp_central_table_decoded_previous_code + S (bcf_previous_code_bcomlfp_central_table) = S ((S (bcf_predecessor_bcomlfp_central_table)) * bcf_row_code_scale_bcomlfp_central)) /\ exists bcf_quotient_bcomlfp_central_table_decoded_previous_code. bcf_row_code_code_bcomlfp_central = bcf_quotient_bcomlfp_central_table_decoded_previous_code * S ((S (bcf_predecessor_bcomlfp_central_table)) * bcf_row_code_scale_bcomlfp_central) + (bcf_previous_code_bcomlfp_central_table))) /\ ((((exists bcf_height_bcomlfp_central_table_decoded_previous_scale. bcf_height_bcomlfp_central_table_decoded_previous_scale + S (bcf_previous_scale_bcomlfp_central_table) = S ((S (bcf_predecessor_bcomlfp_central_table)) * bcf_row_scale_scale_bcomlfp_central)) /\ exists bcf_quotient_bcomlfp_central_table_decoded_previous_scale. bcf_row_scale_code_bcomlfp_central = bcf_quotient_bcomlfp_central_table_decoded_previous_scale * S ((S (bcf_predecessor_bcomlfp_central_table)) * bcf_row_scale_scale_bcomlfp_central) + (bcf_previous_scale_bcomlfp_central_table))) /\ (forall bcf_index_bcomlfp_central_table_row_step. (exists bcf_lt_gap_bcomlfp_central_table_row_step_bound. bcf_lt_gap_bcomlfp_central_table_row_step_bound + S (bcf_index_bcomlfp_central_table_row_step) = S (S n + S n)) -> exists bcf_value_bcomlfp_central_table_row_step. ((((exists bcf_height_bcomlfp_central_table_row_step_entry. bcf_height_bcomlfp_central_table_row_step_entry + S (bcf_value_bcomlfp_central_table_row_step) = S ((S (bcf_index_bcomlfp_central_table_row_step)) * bcf_row_scale_bcomlfp_central_table)) /\ exists bcf_quotient_bcomlfp_central_table_row_step_entry. bcf_row_code_bcomlfp_central_table = bcf_quotient_bcomlfp_central_table_row_step_entry * S ((S (bcf_index_bcomlfp_central_table_row_step)) * bcf_row_scale_bcomlfp_central_table) + (bcf_value_bcomlfp_central_table_row_step))) /\ ((bcf_index_bcomlfp_central_table_row_step = 0 /\ bcf_value_bcomlfp_central_table_row_step = 1) \/ exists bcf_predecessor_bcomlfp_central_table_row_step bcf_left_bcomlfp_central_table_row_step bcf_right_bcomlfp_central_table_row_step. bcf_index_bcomlfp_central_table_row_step = S bcf_predecessor_bcomlfp_central_table_row_step /\ ((((exists bcf_height_bcomlfp_central_table_row_step_previous_left. bcf_height_bcomlfp_central_table_row_step_previous_left + S (bcf_left_bcomlfp_central_table_row_step) = S ((S (bcf_predecessor_bcomlfp_central_table_row_step)) * bcf_previous_scale_bcomlfp_central_table)) /\ exists bcf_quotient_bcomlfp_central_table_row_step_previous_left. bcf_previous_code_bcomlfp_central_table = bcf_quotient_bcomlfp_central_table_row_step_previous_left * S ((S (bcf_predecessor_bcomlfp_central_table_row_step)) * bcf_previous_scale_bcomlfp_central_table) + (bcf_left_bcomlfp_central_table_row_step))) /\ ((((exists bcf_height_bcomlfp_central_table_row_step_previous_right. bcf_height_bcomlfp_central_table_row_step_previous_right + S (bcf_right_bcomlfp_central_table_row_step) = S ((S (S (bcf_predecessor_bcomlfp_central_table_row_step))) * bcf_previous_scale_bcomlfp_central_table)) /\ exists bcf_quotient_bcomlfp_central_table_row_step_previous_right. bcf_previous_code_bcomlfp_central_table = bcf_quotient_bcomlfp_central_table_row_step_previous_right * S ((S (S (bcf_predecessor_bcomlfp_central_table_row_step))) * bcf_previous_scale_bcomlfp_central_table) + (bcf_right_bcomlfp_central_table_row_step))) /\ bcf_value_bcomlfp_central_table_row_step = bcf_left_bcomlfp_central_table_row_step + bcf_right_bcomlfp_central_table_row_step))))))))))) /\ ((((exists bcf_height_bcomlfp_central_decoded_row_code. bcf_height_bcomlfp_central_decoded_row_code + S (bcf_row_code_bcomlfp_central) = S ((S (S n + S n)) * bcf_row_code_scale_bcomlfp_central)) /\ exists bcf_quotient_bcomlfp_central_decoded_row_code. bcf_row_code_code_bcomlfp_central = bcf_quotient_bcomlfp_central_decoded_row_code * S ((S (S n + S n)) * bcf_row_code_scale_bcomlfp_central) + (bcf_row_code_bcomlfp_central))) /\ ((((exists bcf_height_bcomlfp_central_decoded_row_scale. bcf_height_bcomlfp_central_decoded_row_scale + S (bcf_row_scale_bcomlfp_central) = S ((S (S n + S n)) * bcf_row_scale_scale_bcomlfp_central)) /\ exists bcf_quotient_bcomlfp_central_decoded_row_scale. bcf_row_scale_code_bcomlfp_central = bcf_quotient_bcomlfp_central_decoded_row_scale * S ((S (S n + S n)) * bcf_row_scale_scale_bcomlfp_central) + (bcf_row_scale_bcomlfp_central))) /\ (((exists bcf_height_bcomlfp_central_decoded_value. bcf_height_bcomlfp_central_decoded_value + S (d) = S ((S (S n)) * bcf_row_scale_bcomlfp_central)) /\ exists bcf_quotient_bcomlfp_central_decoded_value. bcf_row_code_bcomlfp_central = bcf_quotient_bcomlfp_central_decoded_value * S ((S (S n)) * bcf_row_scale_bcomlfp_central) + (d)))))))))
  11. 0011apply hpackage_right
  12. 0012cases hcentral_exists
  13. 0013have hdouble : x = m + m
  14. 0014apply hpackage_left_right
  15. 0015exact hcentral_exists_witness
  16. 0016exact hmiddle
  17. 0017have hsuccessor_power : Pow(4,S n,q · 4)
    Exact native replay linehave hsuccessor_power : exists pa_b_bcomlfp_successor_power pa_c_bcomlfp_successor_power. ((forall pa_i_bcomlfp_successor_power_repeat. (exists pa_lt_bcomlfp_successor_power_repeat_bound. pa_lt_bcomlfp_successor_power_repeat_bound + S pa_i_bcomlfp_successor_power_repeat = S n) -> (((exists pa_h_bcomlfp_successor_power_repeat_decoded. pa_h_bcomlfp_successor_power_repeat_decoded + S (4) = S ((S (pa_i_bcomlfp_successor_power_repeat)) * pa_c_bcomlfp_successor_power)) /\ exists pa_q_bcomlfp_successor_power_repeat_decoded. pa_b_bcomlfp_successor_power = pa_q_bcomlfp_successor_power_repeat_decoded * S ((S (pa_i_bcomlfp_successor_power_repeat)) * pa_c_bcomlfp_successor_power) + (4)))) /\ (exists pa_u_bcomlfp_successor_power_product pa_v_bcomlfp_successor_power_product. ((((exists pa_h_bcomlfp_successor_power_product_start. pa_h_bcomlfp_successor_power_product_start + S (1) = S ((S (0)) * pa_v_bcomlfp_successor_power_product)) /\ exists pa_q_bcomlfp_successor_power_product_start. pa_u_bcomlfp_successor_power_product = pa_q_bcomlfp_successor_power_product_start * S ((S (0)) * pa_v_bcomlfp_successor_power_product) + (1))) /\ ((((exists pa_h_bcomlfp_successor_power_product_terminal. pa_h_bcomlfp_successor_power_product_terminal + S (q * 4) = S ((S (S n)) * pa_v_bcomlfp_successor_power_product)) /\ exists pa_q_bcomlfp_successor_power_product_terminal. pa_u_bcomlfp_successor_power_product = pa_q_bcomlfp_successor_power_product_terminal * S ((S (S n)) * pa_v_bcomlfp_successor_power_product) + (q * 4))) /\ forall pa_i_bcomlfp_successor_power_product. (exists pa_lt_bcomlfp_successor_power_product_bound. pa_lt_bcomlfp_successor_power_product_bound + S pa_i_bcomlfp_successor_power_product = S n) -> exists pa_p_bcomlfp_successor_power_product pa_r_bcomlfp_successor_power_product pa_s_bcomlfp_successor_power_product. ((((exists pa_h_bcomlfp_successor_power_product_factor. pa_h_bcomlfp_successor_power_product_factor + S (pa_p_bcomlfp_successor_power_product) = S ((S (pa_i_bcomlfp_successor_power_product)) * pa_c_bcomlfp_successor_power)) /\ exists pa_q_bcomlfp_successor_power_product_factor. pa_b_bcomlfp_successor_power = pa_q_bcomlfp_successor_power_product_factor * S ((S (pa_i_bcomlfp_successor_power_product)) * pa_c_bcomlfp_successor_power) + (pa_p_bcomlfp_successor_power_product))) /\ ((((exists pa_h_bcomlfp_successor_power_product_partial. pa_h_bcomlfp_successor_power_product_partial + S (pa_r_bcomlfp_successor_power_product) = S ((S (pa_i_bcomlfp_successor_power_product)) * pa_v_bcomlfp_successor_power_product)) /\ exists pa_q_bcomlfp_successor_power_product_partial. pa_u_bcomlfp_successor_power_product = pa_q_bcomlfp_successor_power_product_partial * S ((S (pa_i_bcomlfp_successor_power_product)) * pa_v_bcomlfp_successor_power_product) + (pa_r_bcomlfp_successor_power_product))) /\ ((((exists pa_h_bcomlfp_successor_power_product_successor. pa_h_bcomlfp_successor_power_product_successor + S (pa_s_bcomlfp_successor_power_product) = S ((S (S pa_i_bcomlfp_successor_power_product)) * pa_v_bcomlfp_successor_power_product)) /\ exists pa_q_bcomlfp_successor_power_product_successor. pa_u_bcomlfp_successor_power_product = pa_q_bcomlfp_successor_power_product_successor * S ((S (S pa_i_bcomlfp_successor_power_product)) * pa_v_bcomlfp_successor_power_product) + (pa_s_bcomlfp_successor_power_product))) /\ pa_s_bcomlfp_successor_power_product = pa_r_bcomlfp_successor_power_product * pa_p_bcomlfp_successor_power_product)))))))
  18. 0018specialize pow_successor_compose 4
  19. 0019specialize pow_successor_compose n
  20. 0020specialize pow_successor_compose q
  21. 0021specialize pow_successor_compose (q * 4)
  22. 0022apply pow_successor_compose
  23. 0023exact hpower
  24. 0024refl
  25. 0025have hstrong_all : ∀ n. ∀ c. ∀ q. CentralBinom(S n,c)Pow(4,S n,q)Le(2 · c,q)
    Exact native replay linehave hstrong_all : forall n c q. (((exists bcf_lt_gap_bcbsuo_central_out_of_range. bcf_lt_gap_bcbsuo_central_out_of_range + S (S n + S n) = S n) /\ c = 0) \/ ((exists bcf_le_gap_bcbsuo_central_in_range. bcf_le_gap_bcbsuo_central_in_range + (S n) = S n + S n) /\ (exists bcf_row_code_code_bcbsuo_central bcf_row_code_scale_bcbsuo_central bcf_row_scale_code_bcbsuo_central bcf_row_scale_scale_bcbsuo_central bcf_row_code_bcbsuo_central bcf_row_scale_bcbsuo_central. ((forall bcf_row_index_bcbsuo_central_table. (exists bcf_lt_gap_bcbsuo_central_table_row_bound. bcf_lt_gap_bcbsuo_central_table_row_bound + S (bcf_row_index_bcbsuo_central_table) = S (S n + S n)) -> exists bcf_row_code_bcbsuo_central_table bcf_row_scale_bcbsuo_central_table. ((((exists bcf_height_bcbsuo_central_table_decoded_row_code. bcf_height_bcbsuo_central_table_decoded_row_code + S (bcf_row_code_bcbsuo_central_table) = S ((S (bcf_row_index_bcbsuo_central_table)) * bcf_row_code_scale_bcbsuo_central)) /\ exists bcf_quotient_bcbsuo_central_table_decoded_row_code. bcf_row_code_code_bcbsuo_central = bcf_quotient_bcbsuo_central_table_decoded_row_code * S ((S (bcf_row_index_bcbsuo_central_table)) * bcf_row_code_scale_bcbsuo_central) + (bcf_row_code_bcbsuo_central_table))) /\ ((((exists bcf_height_bcbsuo_central_table_decoded_row_scale. bcf_height_bcbsuo_central_table_decoded_row_scale + S (bcf_row_scale_bcbsuo_central_table) = S ((S (bcf_row_index_bcbsuo_central_table)) * bcf_row_scale_scale_bcbsuo_central)) /\ exists bcf_quotient_bcbsuo_central_table_decoded_row_scale. bcf_row_scale_code_bcbsuo_central = bcf_quotient_bcbsuo_central_table_decoded_row_scale * S ((S (bcf_row_index_bcbsuo_central_table)) * bcf_row_scale_scale_bcbsuo_central) + (bcf_row_scale_bcbsuo_central_table))) /\ ((bcf_row_index_bcbsuo_central_table = 0 /\ (forall bcf_index_bcbsuo_central_table_zero_row. (exists bcf_lt_gap_bcbsuo_central_table_zero_row_bound. bcf_lt_gap_bcbsuo_central_table_zero_row_bound + S (bcf_index_bcbsuo_central_table_zero_row) = S (S n + S n)) -> exists bcf_value_bcbsuo_central_table_zero_row. ((((exists bcf_height_bcbsuo_central_table_zero_row_entry. bcf_height_bcbsuo_central_table_zero_row_entry + S (bcf_value_bcbsuo_central_table_zero_row) = S ((S (bcf_index_bcbsuo_central_table_zero_row)) * bcf_row_scale_bcbsuo_central_table)) /\ exists bcf_quotient_bcbsuo_central_table_zero_row_entry. bcf_row_code_bcbsuo_central_table = bcf_quotient_bcbsuo_central_table_zero_row_entry * S ((S (bcf_index_bcbsuo_central_table_zero_row)) * bcf_row_scale_bcbsuo_central_table) + (bcf_value_bcbsuo_central_table_zero_row))) /\ ((bcf_index_bcbsuo_central_table_zero_row = 0 /\ bcf_value_bcbsuo_central_table_zero_row = 1) \/ exists bcf_predecessor_bcbsuo_central_table_zero_row. bcf_index_bcbsuo_central_table_zero_row = S bcf_predecessor_bcbsuo_central_table_zero_row /\ bcf_value_bcbsuo_central_table_zero_row = 0)))) \/ exists bcf_predecessor_bcbsuo_central_table bcf_previous_code_bcbsuo_central_table bcf_previous_scale_bcbsuo_central_table. bcf_row_index_bcbsuo_central_table = S bcf_predecessor_bcbsuo_central_table /\ ((((exists bcf_height_bcbsuo_central_table_decoded_previous_code. bcf_height_bcbsuo_central_table_decoded_previous_code + S (bcf_previous_code_bcbsuo_central_table) = S ((S (bcf_predecessor_bcbsuo_central_table)) * bcf_row_code_scale_bcbsuo_central)) /\ exists bcf_quotient_bcbsuo_central_table_decoded_previous_code. bcf_row_code_code_bcbsuo_central = bcf_quotient_bcbsuo_central_table_decoded_previous_code * S ((S (bcf_predecessor_bcbsuo_central_table)) * bcf_row_code_scale_bcbsuo_central) + (bcf_previous_code_bcbsuo_central_table))) /\ ((((exists bcf_height_bcbsuo_central_table_decoded_previous_scale. bcf_height_bcbsuo_central_table_decoded_previous_scale + S (bcf_previous_scale_bcbsuo_central_table) = S ((S (bcf_predecessor_bcbsuo_central_table)) * bcf_row_scale_scale_bcbsuo_central)) /\ exists bcf_quotient_bcbsuo_central_table_decoded_previous_scale. bcf_row_scale_code_bcbsuo_central = bcf_quotient_bcbsuo_central_table_decoded_previous_scale * S ((S (bcf_predecessor_bcbsuo_central_table)) * bcf_row_scale_scale_bcbsuo_central) + (bcf_previous_scale_bcbsuo_central_table))) /\ (forall bcf_index_bcbsuo_central_table_row_step. (exists bcf_lt_gap_bcbsuo_central_table_row_step_bound. bcf_lt_gap_bcbsuo_central_table_row_step_bound + S (bcf_index_bcbsuo_central_table_row_step) = S (S n + S n)) -> exists bcf_value_bcbsuo_central_table_row_step. ((((exists bcf_height_bcbsuo_central_table_row_step_entry. bcf_height_bcbsuo_central_table_row_step_entry + S (bcf_value_bcbsuo_central_table_row_step) = S ((S (bcf_index_bcbsuo_central_table_row_step)) * bcf_row_scale_bcbsuo_central_table)) /\ exists bcf_quotient_bcbsuo_central_table_row_step_entry. bcf_row_code_bcbsuo_central_table = bcf_quotient_bcbsuo_central_table_row_step_entry * S ((S (bcf_index_bcbsuo_central_table_row_step)) * bcf_row_scale_bcbsuo_central_table) + (bcf_value_bcbsuo_central_table_row_step))) /\ ((bcf_index_bcbsuo_central_table_row_step = 0 /\ bcf_value_bcbsuo_central_table_row_step = 1) \/ exists bcf_predecessor_bcbsuo_central_table_row_step bcf_left_bcbsuo_central_table_row_step bcf_right_bcbsuo_central_table_row_step. bcf_index_bcbsuo_central_table_row_step = S bcf_predecessor_bcbsuo_central_table_row_step /\ ((((exists bcf_height_bcbsuo_central_table_row_step_previous_left. bcf_height_bcbsuo_central_table_row_step_previous_left + S (bcf_left_bcbsuo_central_table_row_step) = S ((S (bcf_predecessor_bcbsuo_central_table_row_step)) * bcf_previous_scale_bcbsuo_central_table)) /\ exists bcf_quotient_bcbsuo_central_table_row_step_previous_left. bcf_previous_code_bcbsuo_central_table = bcf_quotient_bcbsuo_central_table_row_step_previous_left * S ((S (bcf_predecessor_bcbsuo_central_table_row_step)) * bcf_previous_scale_bcbsuo_central_table) + (bcf_left_bcbsuo_central_table_row_step))) /\ ((((exists bcf_height_bcbsuo_central_table_row_step_previous_right. bcf_height_bcbsuo_central_table_row_step_previous_right + S (bcf_right_bcbsuo_central_table_row_step) = S ((S (S (bcf_predecessor_bcbsuo_central_table_row_step))) * bcf_previous_scale_bcbsuo_central_table)) /\ exists bcf_quotient_bcbsuo_central_table_row_step_previous_right. bcf_previous_code_bcbsuo_central_table = bcf_quotient_bcbsuo_central_table_row_step_previous_right * S ((S (S (bcf_predecessor_bcbsuo_central_table_row_step))) * bcf_previous_scale_bcbsuo_central_table) + (bcf_right_bcbsuo_central_table_row_step))) /\ bcf_value_bcbsuo_central_table_row_step = bcf_left_bcbsuo_central_table_row_step + bcf_right_bcbsuo_central_table_row_step))))))))))) /\ ((((exists bcf_height_bcbsuo_central_decoded_row_code. bcf_height_bcbsuo_central_decoded_row_code + S (bcf_row_code_bcbsuo_central) = S ((S (S n + S n)) * bcf_row_code_scale_bcbsuo_central)) /\ exists bcf_quotient_bcbsuo_central_decoded_row_code. bcf_row_code_code_bcbsuo_central = bcf_quotient_bcbsuo_central_decoded_row_code * S ((S (S n + S n)) * bcf_row_code_scale_bcbsuo_central) + (bcf_row_code_bcbsuo_central))) /\ ((((exists bcf_height_bcbsuo_central_decoded_row_scale. bcf_height_bcbsuo_central_decoded_row_scale + S (bcf_row_scale_bcbsuo_central) = S ((S (S n + S n)) * bcf_row_scale_scale_bcbsuo_central)) /\ exists bcf_quotient_bcbsuo_central_decoded_row_scale. bcf_row_scale_code_bcbsuo_central = bcf_quotient_bcbsuo_central_decoded_row_scale * S ((S (S n + S n)) * bcf_row_scale_scale_bcbsuo_central) + (bcf_row_scale_bcbsuo_central))) /\ (((exists bcf_height_bcbsuo_central_decoded_value. bcf_height_bcbsuo_central_decoded_value + S (c) = S ((S (S n)) * bcf_row_scale_bcbsuo_central)) /\ exists bcf_quotient_bcbsuo_central_decoded_value. bcf_row_code_bcbsuo_central = bcf_quotient_bcbsuo_central_decoded_value * S ((S (S n)) * bcf_row_scale_bcbsuo_central) + (c))))))))) -> (exists pa_b_bcbsuo_power pa_c_bcbsuo_power. ((forall pa_i_bcbsuo_power_repeat. (exists pa_lt_bcbsuo_power_repeat_bound. pa_lt_bcbsuo_power_repeat_bound + S pa_i_bcbsuo_power_repeat = S n) -> (((exists pa_h_bcbsuo_power_repeat_decoded. pa_h_bcbsuo_power_repeat_decoded + S (4) = S ((S (pa_i_bcbsuo_power_repeat)) * pa_c_bcbsuo_power)) /\ exists pa_q_bcbsuo_power_repeat_decoded. pa_b_bcbsuo_power = pa_q_bcbsuo_power_repeat_decoded * S ((S (pa_i_bcbsuo_power_repeat)) * pa_c_bcbsuo_power) + (4)))) /\ (exists pa_u_bcbsuo_power_product pa_v_bcbsuo_power_product. ((((exists pa_h_bcbsuo_power_product_start. pa_h_bcbsuo_power_product_start + S (1) = S ((S (0)) * pa_v_bcbsuo_power_product)) /\ exists pa_q_bcbsuo_power_product_start. pa_u_bcbsuo_power_product = pa_q_bcbsuo_power_product_start * S ((S (0)) * pa_v_bcbsuo_power_product) + (1))) /\ ((((exists pa_h_bcbsuo_power_product_terminal. pa_h_bcbsuo_power_product_terminal + S (q) = S ((S (S n)) * pa_v_bcbsuo_power_product)) /\ exists pa_q_bcbsuo_power_product_terminal. pa_u_bcbsuo_power_product = pa_q_bcbsuo_power_product_terminal * S ((S (S n)) * pa_v_bcbsuo_power_product) + (q))) /\ forall pa_i_bcbsuo_power_product. (exists pa_lt_bcbsuo_power_product_bound. pa_lt_bcbsuo_power_product_bound + S pa_i_bcbsuo_power_product = S n) -> exists pa_p_bcbsuo_power_product pa_r_bcbsuo_power_product pa_s_bcbsuo_power_product. ((((exists pa_h_bcbsuo_power_product_factor. pa_h_bcbsuo_power_product_factor + S (pa_p_bcbsuo_power_product) = S ((S (pa_i_bcbsuo_power_product)) * pa_c_bcbsuo_power)) /\ exists pa_q_bcbsuo_power_product_factor. pa_b_bcbsuo_power = pa_q_bcbsuo_power_product_factor * S ((S (pa_i_bcbsuo_power_product)) * pa_c_bcbsuo_power) + (pa_p_bcbsuo_power_product))) /\ ((((exists pa_h_bcbsuo_power_product_partial. pa_h_bcbsuo_power_product_partial + S (pa_r_bcbsuo_power_product) = S ((S (pa_i_bcbsuo_power_product)) * pa_v_bcbsuo_power_product)) /\ exists pa_q_bcbsuo_power_product_partial. pa_u_bcbsuo_power_product = pa_q_bcbsuo_power_product_partial * S ((S (pa_i_bcbsuo_power_product)) * pa_v_bcbsuo_power_product) + (pa_r_bcbsuo_power_product))) /\ ((((exists pa_h_bcbsuo_power_product_successor. pa_h_bcbsuo_power_product_successor + S (pa_s_bcbsuo_power_product) = S ((S (S pa_i_bcbsuo_power_product)) * pa_v_bcbsuo_power_product)) /\ exists pa_q_bcbsuo_power_product_successor. pa_u_bcbsuo_power_product = pa_q_bcbsuo_power_product_successor * S ((S (S pa_i_bcbsuo_power_product)) * pa_v_bcbsuo_power_product) + (pa_s_bcbsuo_power_product))) /\ pa_s_bcbsuo_power_product = pa_r_bcbsuo_power_product * pa_p_bcbsuo_power_product)))))))) -> (exists bcf_le_gap_bcbsuo_result. bcf_le_gap_bcbsuo_result + (2 * c) = q)
  26. 0026apply central_binom_strong_upper_of_laws
  27. 0027exact hpackage_left_left
  28. 0028exact hpackage_right
  29. 0029have hstrong : Le(2 · x,q · 4)
    Exact native replay linehave hstrong : exists bcf_le_gap_bcomlfp_strong. bcf_le_gap_bcomlfp_strong + (2 * x) = q * 4
  30. 0030specialize hstrong_all n
  31. 0031specialize hstrong_all x
  32. 0032specialize hstrong_all (q * 4)
  33. 0033apply hstrong_all
  34. 0034exact hcentral_exists_witness
  35. 0035exact hsuccessor_power
  36. 0036have hleft : 2 * (m + m) = 4 * m
  37. 0037trans 2 * m + 2 * m
  38. 0038apply mul_add
  39. 0039trans 2 * (2 * m)
  40. 0040specialize two_mul_eq_add_self (2 * m)
  41. 0041symm
  42. 0042exact two_mul_eq_add_self
  43. 0043trans (2 * 2) * m
  44. 0044symm
  45. 0045apply mul_assoc
  46. 0046have htwo_two : 2 * 2 = 4
  47. 0047norm_num
  48. 0048rewrite htwo_two
  49. 0049refl
  50. 0050have hright : q * 4 = 4 * q
  51. 0051apply mul_comm
  52. 0052rewrite hdouble at hstrong
  53. 0053rewrite hleft at hstrong
  54. 0054rewrite hright at hstrong
  55. 0055specialize mul_le_cancel_left_nonzero 4
  56. 0056specialize mul_le_cancel_left_nonzero m
  57. 0057specialize mul_le_cancel_left_nonzero q
  58. 0058apply mul_le_cancel_left_nonzero
  59. 0059intro hfour_zero
  60. 0060apply PA1
  61. 0061exact hfour_zero
  62. 0062exact hstrong