BT00WF · Bertrand theorem

pow_six_six_le_pow_four_eight_from_total

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

The capacity-safe residual block 6^6 <= 4^8.

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

∀ x. ∀ y. (∀ z. ∀ n. ∃ m. Pow(z,n,m)) → Pow(6,6,x)Pow(4,8,y)Le(x,y)

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

4 occurrences

In local proof propositions

17 occurrences

Exact expanded native-PA statement
forall x y. (forall bpt_a_hj32_residual_six bpt_e_hj32_residual_six. exists bpt_x_hj32_residual_six. (exists ff_b_bpt_value_hj32_residual_six ff_c_bpt_value_hj32_residual_six. ((forall ff_i_bpt_value_hj32_residual_six_repeat. (exists ff_lt_bpt_value_hj32_residual_six_repeat_bound. ff_lt_bpt_value_hj32_residual_six_repeat_bound + S ff_i_bpt_value_hj32_residual_six_repeat = bpt_e_hj32_residual_six) -> (((exists ff_h_bpt_value_hj32_residual_six_repeat_decoded. ff_h_bpt_value_hj32_residual_six_repeat_decoded + S (bpt_a_hj32_residual_six) = S ((S (ff_i_bpt_value_hj32_residual_six_repeat)) * ff_c_bpt_value_hj32_residual_six)) /\ exists ff_q_bpt_value_hj32_residual_six_repeat_decoded. ff_b_bpt_value_hj32_residual_six = ff_q_bpt_value_hj32_residual_six_repeat_decoded * S ((S (ff_i_bpt_value_hj32_residual_six_repeat)) * ff_c_bpt_value_hj32_residual_six) + (bpt_a_hj32_residual_six)))) /\ (exists ff_u_bpt_value_hj32_residual_six_product ff_v_bpt_value_hj32_residual_six_product. ((((exists ff_h_bpt_value_hj32_residual_six_product_start. ff_h_bpt_value_hj32_residual_six_product_start + S (1) = S ((S (0)) * ff_v_bpt_value_hj32_residual_six_product)) /\ exists ff_q_bpt_value_hj32_residual_six_product_start. ff_u_bpt_value_hj32_residual_six_product = ff_q_bpt_value_hj32_residual_six_product_start * S ((S (0)) * ff_v_bpt_value_hj32_residual_six_product) + (1))) /\ ((((exists ff_h_bpt_value_hj32_residual_six_product_terminal. ff_h_bpt_value_hj32_residual_six_product_terminal + S (bpt_x_hj32_residual_six) = S ((S (bpt_e_hj32_residual_six)) * ff_v_bpt_value_hj32_residual_six_product)) /\ exists ff_q_bpt_value_hj32_residual_six_product_terminal. ff_u_bpt_value_hj32_residual_six_product = ff_q_bpt_value_hj32_residual_six_product_terminal * S ((S (bpt_e_hj32_residual_six)) * ff_v_bpt_value_hj32_residual_six_product) + (bpt_x_hj32_residual_six))) /\ forall ff_i_bpt_value_hj32_residual_six_product. (exists ff_lt_bpt_value_hj32_residual_six_product_bound. ff_lt_bpt_value_hj32_residual_six_product_bound + S ff_i_bpt_value_hj32_residual_six_product = bpt_e_hj32_residual_six) -> exists ff_p_bpt_value_hj32_residual_six_product ff_r_bpt_value_hj32_residual_six_product ff_s_bpt_value_hj32_residual_six_product. ((((exists ff_h_bpt_value_hj32_residual_six_product_factor. ff_h_bpt_value_hj32_residual_six_product_factor + S (ff_p_bpt_value_hj32_residual_six_product) = S ((S (ff_i_bpt_value_hj32_residual_six_product)) * ff_c_bpt_value_hj32_residual_six)) /\ exists ff_q_bpt_value_hj32_residual_six_product_factor. ff_b_bpt_value_hj32_residual_six = ff_q_bpt_value_hj32_residual_six_product_factor * S ((S (ff_i_bpt_value_hj32_residual_six_product)) * ff_c_bpt_value_hj32_residual_six) + (ff_p_bpt_value_hj32_residual_six_product))) /\ ((((exists ff_h_bpt_value_hj32_residual_six_product_partial. ff_h_bpt_value_hj32_residual_six_product_partial + S (ff_r_bpt_value_hj32_residual_six_product) = S ((S (ff_i_bpt_value_hj32_residual_six_product)) * ff_v_bpt_value_hj32_residual_six_product)) /\ exists ff_q_bpt_value_hj32_residual_six_product_partial. ff_u_bpt_value_hj32_residual_six_product = ff_q_bpt_value_hj32_residual_six_product_partial * S ((S (ff_i_bpt_value_hj32_residual_six_product)) * ff_v_bpt_value_hj32_residual_six_product) + (ff_r_bpt_value_hj32_residual_six_product))) /\ ((((exists ff_h_bpt_value_hj32_residual_six_product_successor. ff_h_bpt_value_hj32_residual_six_product_successor + S (ff_s_bpt_value_hj32_residual_six_product) = S ((S (S ff_i_bpt_value_hj32_residual_six_product)) * ff_v_bpt_value_hj32_residual_six_product)) /\ exists ff_q_bpt_value_hj32_residual_six_product_successor. ff_u_bpt_value_hj32_residual_six_product = ff_q_bpt_value_hj32_residual_six_product_successor * S ((S (S ff_i_bpt_value_hj32_residual_six_product)) * ff_v_bpt_value_hj32_residual_six_product) + (ff_s_bpt_value_hj32_residual_six_product))) /\ ff_s_bpt_value_hj32_residual_six_product = ff_r_bpt_value_hj32_residual_six_product * ff_p_bpt_value_hj32_residual_six_product))))))))) -> (exists pa_b_hj32_residual_six_left pa_c_hj32_residual_six_left. ((forall pa_i_hj32_residual_six_left_repeat. (exists pa_lt_hj32_residual_six_left_repeat_bound. pa_lt_hj32_residual_six_left_repeat_bound + S pa_i_hj32_residual_six_left_repeat = 6) -> (((exists pa_h_hj32_residual_six_left_repeat_decoded. pa_h_hj32_residual_six_left_repeat_decoded + S (6) = S ((S (pa_i_hj32_residual_six_left_repeat)) * pa_c_hj32_residual_six_left)) /\ exists pa_q_hj32_residual_six_left_repeat_decoded. pa_b_hj32_residual_six_left = pa_q_hj32_residual_six_left_repeat_decoded * S ((S (pa_i_hj32_residual_six_left_repeat)) * pa_c_hj32_residual_six_left) + (6)))) /\ (exists pa_u_hj32_residual_six_left_product pa_v_hj32_residual_six_left_product. ((((exists pa_h_hj32_residual_six_left_product_start. pa_h_hj32_residual_six_left_product_start + S (1) = S ((S (0)) * pa_v_hj32_residual_six_left_product)) /\ exists pa_q_hj32_residual_six_left_product_start. pa_u_hj32_residual_six_left_product = pa_q_hj32_residual_six_left_product_start * S ((S (0)) * pa_v_hj32_residual_six_left_product) + (1))) /\ ((((exists pa_h_hj32_residual_six_left_product_terminal. pa_h_hj32_residual_six_left_product_terminal + S (x) = S ((S (6)) * pa_v_hj32_residual_six_left_product)) /\ exists pa_q_hj32_residual_six_left_product_terminal. pa_u_hj32_residual_six_left_product = pa_q_hj32_residual_six_left_product_terminal * S ((S (6)) * pa_v_hj32_residual_six_left_product) + (x))) /\ forall pa_i_hj32_residual_six_left_product. (exists pa_lt_hj32_residual_six_left_product_bound. pa_lt_hj32_residual_six_left_product_bound + S pa_i_hj32_residual_six_left_product = 6) -> exists pa_p_hj32_residual_six_left_product pa_r_hj32_residual_six_left_product pa_s_hj32_residual_six_left_product. ((((exists pa_h_hj32_residual_six_left_product_factor. pa_h_hj32_residual_six_left_product_factor + S (pa_p_hj32_residual_six_left_product) = S ((S (pa_i_hj32_residual_six_left_product)) * pa_c_hj32_residual_six_left)) /\ exists pa_q_hj32_residual_six_left_product_factor. pa_b_hj32_residual_six_left = pa_q_hj32_residual_six_left_product_factor * S ((S (pa_i_hj32_residual_six_left_product)) * pa_c_hj32_residual_six_left) + (pa_p_hj32_residual_six_left_product))) /\ ((((exists pa_h_hj32_residual_six_left_product_partial. pa_h_hj32_residual_six_left_product_partial + S (pa_r_hj32_residual_six_left_product) = S ((S (pa_i_hj32_residual_six_left_product)) * pa_v_hj32_residual_six_left_product)) /\ exists pa_q_hj32_residual_six_left_product_partial. pa_u_hj32_residual_six_left_product = pa_q_hj32_residual_six_left_product_partial * S ((S (pa_i_hj32_residual_six_left_product)) * pa_v_hj32_residual_six_left_product) + (pa_r_hj32_residual_six_left_product))) /\ ((((exists pa_h_hj32_residual_six_left_product_successor. pa_h_hj32_residual_six_left_product_successor + S (pa_s_hj32_residual_six_left_product) = S ((S (S pa_i_hj32_residual_six_left_product)) * pa_v_hj32_residual_six_left_product)) /\ exists pa_q_hj32_residual_six_left_product_successor. pa_u_hj32_residual_six_left_product = pa_q_hj32_residual_six_left_product_successor * S ((S (S pa_i_hj32_residual_six_left_product)) * pa_v_hj32_residual_six_left_product) + (pa_s_hj32_residual_six_left_product))) /\ pa_s_hj32_residual_six_left_product = pa_r_hj32_residual_six_left_product * pa_p_hj32_residual_six_left_product)))))))) -> (exists pa_b_hj32_residual_six_right pa_c_hj32_residual_six_right. ((forall pa_i_hj32_residual_six_right_repeat. (exists pa_lt_hj32_residual_six_right_repeat_bound. pa_lt_hj32_residual_six_right_repeat_bound + S pa_i_hj32_residual_six_right_repeat = 8) -> (((exists pa_h_hj32_residual_six_right_repeat_decoded. pa_h_hj32_residual_six_right_repeat_decoded + S (4) = S ((S (pa_i_hj32_residual_six_right_repeat)) * pa_c_hj32_residual_six_right)) /\ exists pa_q_hj32_residual_six_right_repeat_decoded. pa_b_hj32_residual_six_right = pa_q_hj32_residual_six_right_repeat_decoded * S ((S (pa_i_hj32_residual_six_right_repeat)) * pa_c_hj32_residual_six_right) + (4)))) /\ (exists pa_u_hj32_residual_six_right_product pa_v_hj32_residual_six_right_product. ((((exists pa_h_hj32_residual_six_right_product_start. pa_h_hj32_residual_six_right_product_start + S (1) = S ((S (0)) * pa_v_hj32_residual_six_right_product)) /\ exists pa_q_hj32_residual_six_right_product_start. pa_u_hj32_residual_six_right_product = pa_q_hj32_residual_six_right_product_start * S ((S (0)) * pa_v_hj32_residual_six_right_product) + (1))) /\ ((((exists pa_h_hj32_residual_six_right_product_terminal. pa_h_hj32_residual_six_right_product_terminal + S (y) = S ((S (8)) * pa_v_hj32_residual_six_right_product)) /\ exists pa_q_hj32_residual_six_right_product_terminal. pa_u_hj32_residual_six_right_product = pa_q_hj32_residual_six_right_product_terminal * S ((S (8)) * pa_v_hj32_residual_six_right_product) + (y))) /\ forall pa_i_hj32_residual_six_right_product. (exists pa_lt_hj32_residual_six_right_product_bound. pa_lt_hj32_residual_six_right_product_bound + S pa_i_hj32_residual_six_right_product = 8) -> exists pa_p_hj32_residual_six_right_product pa_r_hj32_residual_six_right_product pa_s_hj32_residual_six_right_product. ((((exists pa_h_hj32_residual_six_right_product_factor. pa_h_hj32_residual_six_right_product_factor + S (pa_p_hj32_residual_six_right_product) = S ((S (pa_i_hj32_residual_six_right_product)) * pa_c_hj32_residual_six_right)) /\ exists pa_q_hj32_residual_six_right_product_factor. pa_b_hj32_residual_six_right = pa_q_hj32_residual_six_right_product_factor * S ((S (pa_i_hj32_residual_six_right_product)) * pa_c_hj32_residual_six_right) + (pa_p_hj32_residual_six_right_product))) /\ ((((exists pa_h_hj32_residual_six_right_product_partial. pa_h_hj32_residual_six_right_product_partial + S (pa_r_hj32_residual_six_right_product) = S ((S (pa_i_hj32_residual_six_right_product)) * pa_v_hj32_residual_six_right_product)) /\ exists pa_q_hj32_residual_six_right_product_partial. pa_u_hj32_residual_six_right_product = pa_q_hj32_residual_six_right_product_partial * S ((S (pa_i_hj32_residual_six_right_product)) * pa_v_hj32_residual_six_right_product) + (pa_r_hj32_residual_six_right_product))) /\ ((((exists pa_h_hj32_residual_six_right_product_successor. pa_h_hj32_residual_six_right_product_successor + S (pa_s_hj32_residual_six_right_product) = S ((S (S pa_i_hj32_residual_six_right_product)) * pa_v_hj32_residual_six_right_product)) /\ exists pa_q_hj32_residual_six_right_product_successor. pa_u_hj32_residual_six_right_product = pa_q_hj32_residual_six_right_product_successor * S ((S (S pa_i_hj32_residual_six_right_product)) * pa_v_hj32_residual_six_right_product) + (pa_s_hj32_residual_six_right_product))) /\ pa_s_hj32_residual_six_right_product = pa_r_hj32_residual_six_right_product * pa_p_hj32_residual_six_right_product)))))))) -> (exists bqb_le_gap_hj32_residual_six_result. bqb_le_gap_hj32_residual_six_result + (x) = (y))

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

164 script commands · 41 reading checkpoints · 22 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 x
  2. L2
    intro y
  3. L3
    intro htotal
  4. L4
    intro hx
  5. L5
    intro hy
02Establish rs_p3_fiveL6–9

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

  1. L6
    have rs_p3_five : ∃ hj32_local_value_rs_p3_five. Pow(3,5,hj32_local_value_rs_p3_five)Definitions: Pow(3,5,hj32_local_value_rs_p3_five)Original native command in the exact edition
  2. L7
    specialize htotal 3
  3. L8
    specialize htotal 5
  4. L9
    exact htotal
03Separate the logical casesL10–10

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

  1. L10
    cases rs_p3_five
04Establish rs_p4_fourL11–14

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

  1. L11
    have rs_p4_four : ∃ hj32_local_value_rs_p4_four. Pow(4,4,hj32_local_value_rs_p4_four)Definitions: Pow(4,4,hj32_local_value_rs_p4_four)Original native command in the exact edition
  2. L12
    specialize htotal 4
  3. L13
    specialize htotal 4
  4. L14
    exact htotal
05Separate the logical casesL15–15

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

  1. L15
    cases rs_p4_four
06Establish rs_seedL16–22

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pow three five le pow four four from total.

  1. L16
    have rs_seed : Le(x1,x2)Definitions: Le(x1,x2)Original native command in the exact edition
  2. L17
    specialize pow_three_five_le_pow_four_four_from_total x1
  3. L18
    specialize pow_three_five_le_pow_four_four_from_total x2
  4. L19
    apply pow_three_five_le_pow_four_four_from_total
  5. L20
    exact htotal
  6. L21
    exact rs_p3_five_witness
  7. L22
    exact rs_p4_four_witness
07Establish rs_p3_oneL23–26

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

  1. L23
    have rs_p3_one : ∃ hj32_local_value_rs_p3_one. Pow(3,1,hj32_local_value_rs_p3_one)Definitions: Pow(3,1,hj32_local_value_rs_p3_one)Original native command in the exact edition
  2. L24
    specialize htotal 3
  3. L25
    specialize htotal 1
  4. L26
    exact htotal
08Separate the logical casesL27–27

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

  1. L27
    cases rs_p3_one
09Establish rs_p4_oneL28–31

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

  1. L28
    have rs_p4_one : ∃ hj32_local_value_rs_p4_one. Pow(4,1,hj32_local_value_rs_p4_one)Definitions: Pow(4,1,hj32_local_value_rs_p4_one)Original native command in the exact edition
  2. L29
    specialize htotal 4
  3. L30
    specialize htotal 1
  4. L31
    exact htotal
10Separate the logical casesL32–32

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

  1. L32
    cases rs_p4_one
11Establish rs_baseL33–33

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

  1. L33
    have rs_base : Lt(2,4)Definitions: Lt(2,4)Original native command in the exact edition
12Construct an explicit witnessL34–34

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

  1. L34
    exists 1
13Calculate and transport equalitiesL35–35

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

  1. L35
    norm_num
14Establish rs_one_boundL36–45

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

  1. L36
    have rs_one_bound : Le(x3,x4)Definitions: Le(x3,x4)Original native command in the exact edition
  2. L37
    specialize pow_base_monotone 3
  3. L38
    specialize pow_base_monotone 4
  4. L39
    specialize pow_base_monotone 1
  5. L40
    specialize pow_base_monotone x3
  6. L41
    specialize pow_base_monotone x4
  7. L42
    apply pow_base_monotone
  8. L43
    exact rs_base
  9. L44
    exact rs_p3_one_witness
  10. L45
    exact rs_p4_one_witness
15Establish rs_p3_sixL46–49

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

  1. L46
    have rs_p3_six : ∃ hj32_local_value_rs_p3_six. Pow(3,6,hj32_local_value_rs_p3_six)Definitions: Pow(3,6,hj32_local_value_rs_p3_six)Original native command in the exact edition
  2. L47
    specialize htotal 3
  3. L48
    specialize htotal 6
  4. L49
    exact htotal
16Separate the logical casesL50–50

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

  1. L50
    cases rs_p3_six
17Establish rs_p4_fiveL51–54

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

  1. L51
    have rs_p4_five : ∃ hj32_local_value_rs_p4_five. Pow(4,5,hj32_local_value_rs_p4_five)Definitions: Pow(4,5,hj32_local_value_rs_p4_five)Original native command in the exact edition
  2. L52
    specialize htotal 4
  3. L53
    specialize htotal 5
  4. L54
    exact htotal
18Separate the logical casesL55–55

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

  1. L55
    cases rs_p4_five
19Establish rs_three_productL56–65

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

  1. L56
    have rs_three_product : x5 = x1 * x3
  2. L57
    specialize pow_add 3
  3. L58
    specialize pow_add 5
  4. L59
    specialize pow_add 1
  5. L60
    specialize pow_add 6
  6. L61
    specialize pow_add x1
  7. L62
    specialize pow_add x3
  8. L63
    specialize pow_add x5
  9. L64
    apply pow_add
  10. L65
    norm_num
20Use earlier factsL66–68

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

  1. L66
    exact rs_p3_five_witness
  2. L67
    exact rs_p3_one_witness
  3. L68
    exact rs_p3_six_witness
21Establish rs_four_productL69–78

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

  1. L69
    have rs_four_product : x6 = x2 * x4
  2. L70
    specialize pow_add 4
  3. L71
    specialize pow_add 4
  4. L72
    specialize pow_add 1
  5. L73
    specialize pow_add 5
  6. L74
    specialize pow_add x2
  7. L75
    specialize pow_add x4
  8. L76
    specialize pow_add x6
  9. L77
    apply pow_add
  10. L78
    norm_num
22Use earlier factsL79–81

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

  1. L79
    exact rs_p4_four_witness
  2. L80
    exact rs_p4_one_witness
  3. L81
    exact rs_p4_five_witness
23Establish rs_three_boundL82–91

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

  1. L82
    have rs_three_bound : Le(x1 · x3,x2 · x4)Definitions: Le(x1 · x3,x2 · x4)Original native command in the exact edition
  2. L83
    specialize mul_le_mul x1
  3. L84
    specialize mul_le_mul x2
  4. L85
    specialize mul_le_mul x3
  5. L86
    specialize mul_le_mul x4
  6. L87
    apply mul_le_mul
  7. L88
    exact rs_seed
  8. L89
    exact rs_one_bound
  9. L90
    rewrite <- rs_three_product at rs_three_bound
  10. L91
    rewrite <- rs_four_product at rs_three_bound
24Establish rs_seedsL92–94

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pow two seed bundle from total.

  1. L92
    have rs_seeds : Pow(2,2,4) ∧ Pow(2,7,128)Definitions: Pow(2,2,4)Pow(2,7,128)Original native command in the exact edition
  2. L93
    apply pow_two_seed_bundle_from_total
  3. L94
    exact htotal
25Separate the logical casesL95–95

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

  1. L95
    cases rs_seeds
26Establish rs_p2_sixL96–99

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

  1. L96
    have rs_p2_six : ∃ hj32_local_value_rs_p2_six. Pow(2,6,hj32_local_value_rs_p2_six)Definitions: Pow(2,6,hj32_local_value_rs_p2_six)Original native command in the exact edition
  2. L97
    specialize htotal 2
  3. L98
    specialize htotal 6
  4. L99
    exact htotal
27Separate the logical casesL100–100

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

  1. L100
    cases rs_p2_six
28Establish rs_p4_threeL101–104

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

  1. L101
    have rs_p4_three : ∃ hj32_local_value_rs_p4_three. Pow(4,3,hj32_local_value_rs_p4_three)Definitions: Pow(4,3,hj32_local_value_rs_p4_three)Original native command in the exact edition
  2. L102
    specialize htotal 4
  3. L103
    specialize htotal 3
  4. L104
    exact htotal
29Separate the logical casesL105–105

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

  1. L105
    cases rs_p4_three
30Establish rs_two_bridgeL106–115

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

  1. L106
    have rs_two_bridge : x8 = x7
  2. L107
    specialize pow_mul_exp_from_total 2
  3. L108
    specialize pow_mul_exp_from_total 2
  4. L109
    specialize pow_mul_exp_from_total 3
  5. L110
    specialize pow_mul_exp_from_total 6
  6. L111
    specialize pow_mul_exp_from_total 4
  7. L112
    specialize pow_mul_exp_from_total x8
  8. L113
    specialize pow_mul_exp_from_total x7
  9. L114
    apply pow_mul_exp_from_total
  10. L115
    exact htotal
31Calculate and transport equalitiesL116–116

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

  1. L116
    norm_num
32Use earlier factsL117–119

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

  1. L117
    exact rs_seeds_left
  2. L118
    exact rs_p4_three_witness
  3. L119
    exact rs_p2_six_witness
33Establish rs_two_boundL120–123

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

  1. L120
    have rs_two_bound : Le(x7,x8)Definitions: Le(x7,x8)Original native command in the exact edition
  2. L121
    rewrite rs_two_bridge
  3. L122
    specialize le_refl x7
  4. L123
    exact le_refl
34Establish rs_six_product_graphL124–124

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

  1. L124
    have rs_six_product_graph : Pow(2 · 3,6,x)Definitions: Pow(2 · 3,6,x)Original native command in the exact edition
35Establish rs_six_product_baseL125–129

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

  1. L125
    have rs_six_product_base : 2 * 3 = 6
  2. L126
    norm_num
  3. L127
    rewrite rs_six_product_base
  4. L128
    rewrite rs_six_product_base
  5. L129
    exact hx
36Establish rs_six_productL130–139

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

  1. L130
    have rs_six_product : x = x7 * x5
  2. L131
    specialize pow_mul_base 2
  3. L132
    specialize pow_mul_base 3
  4. L133
    specialize pow_mul_base 6
  5. L134
    specialize pow_mul_base x7
  6. L135
    specialize pow_mul_base x5
  7. L136
    specialize pow_mul_base x
  8. L137
    apply pow_mul_base
  9. L138
    exact rs_p2_six_witness
  10. L139
    exact rs_p3_six_witness
37Use earlier factsL140–140

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

  1. L140
    exact rs_six_product_graph
38Establish rs_eight_productL141–150

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

  1. L141
    have rs_eight_product : y = x8 * x6
  2. L142
    specialize pow_add 4
  3. L143
    specialize pow_add 3
  4. L144
    specialize pow_add 5
  5. L145
    specialize pow_add 8
  6. L146
    specialize pow_add x8
  7. L147
    specialize pow_add x6
  8. L148
    specialize pow_add y
  9. L149
    apply pow_add
  10. L150
    norm_num
39Use earlier factsL151–153

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

  1. L151
    exact rs_p4_three_witness
  2. L152
    exact rs_p4_five_witness
  3. L153
    exact hy
40Establish rs_resultL154–163

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

  1. L154
    have rs_result : Le(x7 · x5,x8 · x6)Definitions: Le(x7 · x5,x8 · x6)Original native command in the exact edition
  2. L155
    specialize mul_le_mul x7
  3. L156
    specialize mul_le_mul x8
  4. L157
    specialize mul_le_mul x5
  5. L158
    specialize mul_le_mul x6
  6. L159
    apply mul_le_mul
  7. L160
    exact rs_two_bound
  8. L161
    exact rs_three_bound
  9. L162
    rewrite <- rs_six_product at rs_result
  10. L163
    rewrite <- rs_eight_product at rs_result
41Use earlier factsL164–164

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

  1. L164
    exact rs_result

Library-wide reading audit

Original defined command ledger · 164 lines
  1. 0001intro x
  2. 0002intro y
  3. 0003intro htotal
  4. 0004intro hx
  5. 0005intro hy
  6. 0006have rs_p3_five : ∃ hj32_local_value_rs_p3_five. Pow(3,5,hj32_local_value_rs_p3_five)
    Exact native replay linehave rs_p3_five : exists hj32_local_value_rs_p3_five. (exists pa_b_hj32_local_total_rs_p3_five pa_c_hj32_local_total_rs_p3_five. ((forall pa_i_hj32_local_total_rs_p3_five_repeat. (exists pa_lt_hj32_local_total_rs_p3_five_repeat_bound. pa_lt_hj32_local_total_rs_p3_five_repeat_bound + S pa_i_hj32_local_total_rs_p3_five_repeat = 5) -> (((exists pa_h_hj32_local_total_rs_p3_five_repeat_decoded. pa_h_hj32_local_total_rs_p3_five_repeat_decoded + S (3) = S ((S (pa_i_hj32_local_total_rs_p3_five_repeat)) * pa_c_hj32_local_total_rs_p3_five)) /\ exists pa_q_hj32_local_total_rs_p3_five_repeat_decoded. pa_b_hj32_local_total_rs_p3_five = pa_q_hj32_local_total_rs_p3_five_repeat_decoded * S ((S (pa_i_hj32_local_total_rs_p3_five_repeat)) * pa_c_hj32_local_total_rs_p3_five) + (3)))) /\ (exists pa_u_hj32_local_total_rs_p3_five_product pa_v_hj32_local_total_rs_p3_five_product. ((((exists pa_h_hj32_local_total_rs_p3_five_product_start. pa_h_hj32_local_total_rs_p3_five_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_total_rs_p3_five_product)) /\ exists pa_q_hj32_local_total_rs_p3_five_product_start. pa_u_hj32_local_total_rs_p3_five_product = pa_q_hj32_local_total_rs_p3_five_product_start * S ((S (0)) * pa_v_hj32_local_total_rs_p3_five_product) + (1))) /\ ((((exists pa_h_hj32_local_total_rs_p3_five_product_terminal. pa_h_hj32_local_total_rs_p3_five_product_terminal + S (hj32_local_value_rs_p3_five) = S ((S (5)) * pa_v_hj32_local_total_rs_p3_five_product)) /\ exists pa_q_hj32_local_total_rs_p3_five_product_terminal. pa_u_hj32_local_total_rs_p3_five_product = pa_q_hj32_local_total_rs_p3_five_product_terminal * S ((S (5)) * pa_v_hj32_local_total_rs_p3_five_product) + (hj32_local_value_rs_p3_five))) /\ forall pa_i_hj32_local_total_rs_p3_five_product. (exists pa_lt_hj32_local_total_rs_p3_five_product_bound. pa_lt_hj32_local_total_rs_p3_five_product_bound + S pa_i_hj32_local_total_rs_p3_five_product = 5) -> exists pa_p_hj32_local_total_rs_p3_five_product pa_r_hj32_local_total_rs_p3_five_product pa_s_hj32_local_total_rs_p3_five_product. ((((exists pa_h_hj32_local_total_rs_p3_five_product_factor. pa_h_hj32_local_total_rs_p3_five_product_factor + S (pa_p_hj32_local_total_rs_p3_five_product) = S ((S (pa_i_hj32_local_total_rs_p3_five_product)) * pa_c_hj32_local_total_rs_p3_five)) /\ exists pa_q_hj32_local_total_rs_p3_five_product_factor. pa_b_hj32_local_total_rs_p3_five = pa_q_hj32_local_total_rs_p3_five_product_factor * S ((S (pa_i_hj32_local_total_rs_p3_five_product)) * pa_c_hj32_local_total_rs_p3_five) + (pa_p_hj32_local_total_rs_p3_five_product))) /\ ((((exists pa_h_hj32_local_total_rs_p3_five_product_partial. pa_h_hj32_local_total_rs_p3_five_product_partial + S (pa_r_hj32_local_total_rs_p3_five_product) = S ((S (pa_i_hj32_local_total_rs_p3_five_product)) * pa_v_hj32_local_total_rs_p3_five_product)) /\ exists pa_q_hj32_local_total_rs_p3_five_product_partial. pa_u_hj32_local_total_rs_p3_five_product = pa_q_hj32_local_total_rs_p3_five_product_partial * S ((S (pa_i_hj32_local_total_rs_p3_five_product)) * pa_v_hj32_local_total_rs_p3_five_product) + (pa_r_hj32_local_total_rs_p3_five_product))) /\ ((((exists pa_h_hj32_local_total_rs_p3_five_product_successor. pa_h_hj32_local_total_rs_p3_five_product_successor + S (pa_s_hj32_local_total_rs_p3_five_product) = S ((S (S pa_i_hj32_local_total_rs_p3_five_product)) * pa_v_hj32_local_total_rs_p3_five_product)) /\ exists pa_q_hj32_local_total_rs_p3_five_product_successor. pa_u_hj32_local_total_rs_p3_five_product = pa_q_hj32_local_total_rs_p3_five_product_successor * S ((S (S pa_i_hj32_local_total_rs_p3_five_product)) * pa_v_hj32_local_total_rs_p3_five_product) + (pa_s_hj32_local_total_rs_p3_five_product))) /\ pa_s_hj32_local_total_rs_p3_five_product = pa_r_hj32_local_total_rs_p3_five_product * pa_p_hj32_local_total_rs_p3_five_product))))))))
  7. 0007specialize htotal 3
  8. 0008specialize htotal 5
  9. 0009exact htotal
  10. 0010cases rs_p3_five
  11. 0011have rs_p4_four : ∃ hj32_local_value_rs_p4_four. Pow(4,4,hj32_local_value_rs_p4_four)
    Exact native replay linehave rs_p4_four : exists hj32_local_value_rs_p4_four. (exists pa_b_hj32_local_total_rs_p4_four pa_c_hj32_local_total_rs_p4_four. ((forall pa_i_hj32_local_total_rs_p4_four_repeat. (exists pa_lt_hj32_local_total_rs_p4_four_repeat_bound. pa_lt_hj32_local_total_rs_p4_four_repeat_bound + S pa_i_hj32_local_total_rs_p4_four_repeat = 4) -> (((exists pa_h_hj32_local_total_rs_p4_four_repeat_decoded. pa_h_hj32_local_total_rs_p4_four_repeat_decoded + S (4) = S ((S (pa_i_hj32_local_total_rs_p4_four_repeat)) * pa_c_hj32_local_total_rs_p4_four)) /\ exists pa_q_hj32_local_total_rs_p4_four_repeat_decoded. pa_b_hj32_local_total_rs_p4_four = pa_q_hj32_local_total_rs_p4_four_repeat_decoded * S ((S (pa_i_hj32_local_total_rs_p4_four_repeat)) * pa_c_hj32_local_total_rs_p4_four) + (4)))) /\ (exists pa_u_hj32_local_total_rs_p4_four_product pa_v_hj32_local_total_rs_p4_four_product. ((((exists pa_h_hj32_local_total_rs_p4_four_product_start. pa_h_hj32_local_total_rs_p4_four_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_total_rs_p4_four_product)) /\ exists pa_q_hj32_local_total_rs_p4_four_product_start. pa_u_hj32_local_total_rs_p4_four_product = pa_q_hj32_local_total_rs_p4_four_product_start * S ((S (0)) * pa_v_hj32_local_total_rs_p4_four_product) + (1))) /\ ((((exists pa_h_hj32_local_total_rs_p4_four_product_terminal. pa_h_hj32_local_total_rs_p4_four_product_terminal + S (hj32_local_value_rs_p4_four) = S ((S (4)) * pa_v_hj32_local_total_rs_p4_four_product)) /\ exists pa_q_hj32_local_total_rs_p4_four_product_terminal. pa_u_hj32_local_total_rs_p4_four_product = pa_q_hj32_local_total_rs_p4_four_product_terminal * S ((S (4)) * pa_v_hj32_local_total_rs_p4_four_product) + (hj32_local_value_rs_p4_four))) /\ forall pa_i_hj32_local_total_rs_p4_four_product. (exists pa_lt_hj32_local_total_rs_p4_four_product_bound. pa_lt_hj32_local_total_rs_p4_four_product_bound + S pa_i_hj32_local_total_rs_p4_four_product = 4) -> exists pa_p_hj32_local_total_rs_p4_four_product pa_r_hj32_local_total_rs_p4_four_product pa_s_hj32_local_total_rs_p4_four_product. ((((exists pa_h_hj32_local_total_rs_p4_four_product_factor. pa_h_hj32_local_total_rs_p4_four_product_factor + S (pa_p_hj32_local_total_rs_p4_four_product) = S ((S (pa_i_hj32_local_total_rs_p4_four_product)) * pa_c_hj32_local_total_rs_p4_four)) /\ exists pa_q_hj32_local_total_rs_p4_four_product_factor. pa_b_hj32_local_total_rs_p4_four = pa_q_hj32_local_total_rs_p4_four_product_factor * S ((S (pa_i_hj32_local_total_rs_p4_four_product)) * pa_c_hj32_local_total_rs_p4_four) + (pa_p_hj32_local_total_rs_p4_four_product))) /\ ((((exists pa_h_hj32_local_total_rs_p4_four_product_partial. pa_h_hj32_local_total_rs_p4_four_product_partial + S (pa_r_hj32_local_total_rs_p4_four_product) = S ((S (pa_i_hj32_local_total_rs_p4_four_product)) * pa_v_hj32_local_total_rs_p4_four_product)) /\ exists pa_q_hj32_local_total_rs_p4_four_product_partial. pa_u_hj32_local_total_rs_p4_four_product = pa_q_hj32_local_total_rs_p4_four_product_partial * S ((S (pa_i_hj32_local_total_rs_p4_four_product)) * pa_v_hj32_local_total_rs_p4_four_product) + (pa_r_hj32_local_total_rs_p4_four_product))) /\ ((((exists pa_h_hj32_local_total_rs_p4_four_product_successor. pa_h_hj32_local_total_rs_p4_four_product_successor + S (pa_s_hj32_local_total_rs_p4_four_product) = S ((S (S pa_i_hj32_local_total_rs_p4_four_product)) * pa_v_hj32_local_total_rs_p4_four_product)) /\ exists pa_q_hj32_local_total_rs_p4_four_product_successor. pa_u_hj32_local_total_rs_p4_four_product = pa_q_hj32_local_total_rs_p4_four_product_successor * S ((S (S pa_i_hj32_local_total_rs_p4_four_product)) * pa_v_hj32_local_total_rs_p4_four_product) + (pa_s_hj32_local_total_rs_p4_four_product))) /\ pa_s_hj32_local_total_rs_p4_four_product = pa_r_hj32_local_total_rs_p4_four_product * pa_p_hj32_local_total_rs_p4_four_product))))))))
  12. 0012specialize htotal 4
  13. 0013specialize htotal 4
  14. 0014exact htotal
  15. 0015cases rs_p4_four
  16. 0016have rs_seed : Le(x1,x2)
    Exact native replay linehave rs_seed : exists bqb_le_gap_hj32_rs_seed. bqb_le_gap_hj32_rs_seed + (x1) = (x2)
  17. 0017specialize pow_three_five_le_pow_four_four_from_total x1
  18. 0018specialize pow_three_five_le_pow_four_four_from_total x2
  19. 0019apply pow_three_five_le_pow_four_four_from_total
  20. 0020exact htotal
  21. 0021exact rs_p3_five_witness
  22. 0022exact rs_p4_four_witness
  23. 0023have rs_p3_one : ∃ hj32_local_value_rs_p3_one. Pow(3,1,hj32_local_value_rs_p3_one)
    Exact native replay linehave rs_p3_one : exists hj32_local_value_rs_p3_one. (exists pa_b_hj32_local_total_rs_p3_one pa_c_hj32_local_total_rs_p3_one. ((forall pa_i_hj32_local_total_rs_p3_one_repeat. (exists pa_lt_hj32_local_total_rs_p3_one_repeat_bound. pa_lt_hj32_local_total_rs_p3_one_repeat_bound + S pa_i_hj32_local_total_rs_p3_one_repeat = 1) -> (((exists pa_h_hj32_local_total_rs_p3_one_repeat_decoded. pa_h_hj32_local_total_rs_p3_one_repeat_decoded + S (3) = S ((S (pa_i_hj32_local_total_rs_p3_one_repeat)) * pa_c_hj32_local_total_rs_p3_one)) /\ exists pa_q_hj32_local_total_rs_p3_one_repeat_decoded. pa_b_hj32_local_total_rs_p3_one = pa_q_hj32_local_total_rs_p3_one_repeat_decoded * S ((S (pa_i_hj32_local_total_rs_p3_one_repeat)) * pa_c_hj32_local_total_rs_p3_one) + (3)))) /\ (exists pa_u_hj32_local_total_rs_p3_one_product pa_v_hj32_local_total_rs_p3_one_product. ((((exists pa_h_hj32_local_total_rs_p3_one_product_start. pa_h_hj32_local_total_rs_p3_one_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_total_rs_p3_one_product)) /\ exists pa_q_hj32_local_total_rs_p3_one_product_start. pa_u_hj32_local_total_rs_p3_one_product = pa_q_hj32_local_total_rs_p3_one_product_start * S ((S (0)) * pa_v_hj32_local_total_rs_p3_one_product) + (1))) /\ ((((exists pa_h_hj32_local_total_rs_p3_one_product_terminal. pa_h_hj32_local_total_rs_p3_one_product_terminal + S (hj32_local_value_rs_p3_one) = S ((S (1)) * pa_v_hj32_local_total_rs_p3_one_product)) /\ exists pa_q_hj32_local_total_rs_p3_one_product_terminal. pa_u_hj32_local_total_rs_p3_one_product = pa_q_hj32_local_total_rs_p3_one_product_terminal * S ((S (1)) * pa_v_hj32_local_total_rs_p3_one_product) + (hj32_local_value_rs_p3_one))) /\ forall pa_i_hj32_local_total_rs_p3_one_product. (exists pa_lt_hj32_local_total_rs_p3_one_product_bound. pa_lt_hj32_local_total_rs_p3_one_product_bound + S pa_i_hj32_local_total_rs_p3_one_product = 1) -> exists pa_p_hj32_local_total_rs_p3_one_product pa_r_hj32_local_total_rs_p3_one_product pa_s_hj32_local_total_rs_p3_one_product. ((((exists pa_h_hj32_local_total_rs_p3_one_product_factor. pa_h_hj32_local_total_rs_p3_one_product_factor + S (pa_p_hj32_local_total_rs_p3_one_product) = S ((S (pa_i_hj32_local_total_rs_p3_one_product)) * pa_c_hj32_local_total_rs_p3_one)) /\ exists pa_q_hj32_local_total_rs_p3_one_product_factor. pa_b_hj32_local_total_rs_p3_one = pa_q_hj32_local_total_rs_p3_one_product_factor * S ((S (pa_i_hj32_local_total_rs_p3_one_product)) * pa_c_hj32_local_total_rs_p3_one) + (pa_p_hj32_local_total_rs_p3_one_product))) /\ ((((exists pa_h_hj32_local_total_rs_p3_one_product_partial. pa_h_hj32_local_total_rs_p3_one_product_partial + S (pa_r_hj32_local_total_rs_p3_one_product) = S ((S (pa_i_hj32_local_total_rs_p3_one_product)) * pa_v_hj32_local_total_rs_p3_one_product)) /\ exists pa_q_hj32_local_total_rs_p3_one_product_partial. pa_u_hj32_local_total_rs_p3_one_product = pa_q_hj32_local_total_rs_p3_one_product_partial * S ((S (pa_i_hj32_local_total_rs_p3_one_product)) * pa_v_hj32_local_total_rs_p3_one_product) + (pa_r_hj32_local_total_rs_p3_one_product))) /\ ((((exists pa_h_hj32_local_total_rs_p3_one_product_successor. pa_h_hj32_local_total_rs_p3_one_product_successor + S (pa_s_hj32_local_total_rs_p3_one_product) = S ((S (S pa_i_hj32_local_total_rs_p3_one_product)) * pa_v_hj32_local_total_rs_p3_one_product)) /\ exists pa_q_hj32_local_total_rs_p3_one_product_successor. pa_u_hj32_local_total_rs_p3_one_product = pa_q_hj32_local_total_rs_p3_one_product_successor * S ((S (S pa_i_hj32_local_total_rs_p3_one_product)) * pa_v_hj32_local_total_rs_p3_one_product) + (pa_s_hj32_local_total_rs_p3_one_product))) /\ pa_s_hj32_local_total_rs_p3_one_product = pa_r_hj32_local_total_rs_p3_one_product * pa_p_hj32_local_total_rs_p3_one_product))))))))
  24. 0024specialize htotal 3
  25. 0025specialize htotal 1
  26. 0026exact htotal
  27. 0027cases rs_p3_one
  28. 0028have rs_p4_one : ∃ hj32_local_value_rs_p4_one. Pow(4,1,hj32_local_value_rs_p4_one)
    Exact native replay linehave rs_p4_one : exists hj32_local_value_rs_p4_one. (exists pa_b_hj32_local_total_rs_p4_one pa_c_hj32_local_total_rs_p4_one. ((forall pa_i_hj32_local_total_rs_p4_one_repeat. (exists pa_lt_hj32_local_total_rs_p4_one_repeat_bound. pa_lt_hj32_local_total_rs_p4_one_repeat_bound + S pa_i_hj32_local_total_rs_p4_one_repeat = 1) -> (((exists pa_h_hj32_local_total_rs_p4_one_repeat_decoded. pa_h_hj32_local_total_rs_p4_one_repeat_decoded + S (4) = S ((S (pa_i_hj32_local_total_rs_p4_one_repeat)) * pa_c_hj32_local_total_rs_p4_one)) /\ exists pa_q_hj32_local_total_rs_p4_one_repeat_decoded. pa_b_hj32_local_total_rs_p4_one = pa_q_hj32_local_total_rs_p4_one_repeat_decoded * S ((S (pa_i_hj32_local_total_rs_p4_one_repeat)) * pa_c_hj32_local_total_rs_p4_one) + (4)))) /\ (exists pa_u_hj32_local_total_rs_p4_one_product pa_v_hj32_local_total_rs_p4_one_product. ((((exists pa_h_hj32_local_total_rs_p4_one_product_start. pa_h_hj32_local_total_rs_p4_one_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_total_rs_p4_one_product)) /\ exists pa_q_hj32_local_total_rs_p4_one_product_start. pa_u_hj32_local_total_rs_p4_one_product = pa_q_hj32_local_total_rs_p4_one_product_start * S ((S (0)) * pa_v_hj32_local_total_rs_p4_one_product) + (1))) /\ ((((exists pa_h_hj32_local_total_rs_p4_one_product_terminal. pa_h_hj32_local_total_rs_p4_one_product_terminal + S (hj32_local_value_rs_p4_one) = S ((S (1)) * pa_v_hj32_local_total_rs_p4_one_product)) /\ exists pa_q_hj32_local_total_rs_p4_one_product_terminal. pa_u_hj32_local_total_rs_p4_one_product = pa_q_hj32_local_total_rs_p4_one_product_terminal * S ((S (1)) * pa_v_hj32_local_total_rs_p4_one_product) + (hj32_local_value_rs_p4_one))) /\ forall pa_i_hj32_local_total_rs_p4_one_product. (exists pa_lt_hj32_local_total_rs_p4_one_product_bound. pa_lt_hj32_local_total_rs_p4_one_product_bound + S pa_i_hj32_local_total_rs_p4_one_product = 1) -> exists pa_p_hj32_local_total_rs_p4_one_product pa_r_hj32_local_total_rs_p4_one_product pa_s_hj32_local_total_rs_p4_one_product. ((((exists pa_h_hj32_local_total_rs_p4_one_product_factor. pa_h_hj32_local_total_rs_p4_one_product_factor + S (pa_p_hj32_local_total_rs_p4_one_product) = S ((S (pa_i_hj32_local_total_rs_p4_one_product)) * pa_c_hj32_local_total_rs_p4_one)) /\ exists pa_q_hj32_local_total_rs_p4_one_product_factor. pa_b_hj32_local_total_rs_p4_one = pa_q_hj32_local_total_rs_p4_one_product_factor * S ((S (pa_i_hj32_local_total_rs_p4_one_product)) * pa_c_hj32_local_total_rs_p4_one) + (pa_p_hj32_local_total_rs_p4_one_product))) /\ ((((exists pa_h_hj32_local_total_rs_p4_one_product_partial. pa_h_hj32_local_total_rs_p4_one_product_partial + S (pa_r_hj32_local_total_rs_p4_one_product) = S ((S (pa_i_hj32_local_total_rs_p4_one_product)) * pa_v_hj32_local_total_rs_p4_one_product)) /\ exists pa_q_hj32_local_total_rs_p4_one_product_partial. pa_u_hj32_local_total_rs_p4_one_product = pa_q_hj32_local_total_rs_p4_one_product_partial * S ((S (pa_i_hj32_local_total_rs_p4_one_product)) * pa_v_hj32_local_total_rs_p4_one_product) + (pa_r_hj32_local_total_rs_p4_one_product))) /\ ((((exists pa_h_hj32_local_total_rs_p4_one_product_successor. pa_h_hj32_local_total_rs_p4_one_product_successor + S (pa_s_hj32_local_total_rs_p4_one_product) = S ((S (S pa_i_hj32_local_total_rs_p4_one_product)) * pa_v_hj32_local_total_rs_p4_one_product)) /\ exists pa_q_hj32_local_total_rs_p4_one_product_successor. pa_u_hj32_local_total_rs_p4_one_product = pa_q_hj32_local_total_rs_p4_one_product_successor * S ((S (S pa_i_hj32_local_total_rs_p4_one_product)) * pa_v_hj32_local_total_rs_p4_one_product) + (pa_s_hj32_local_total_rs_p4_one_product))) /\ pa_s_hj32_local_total_rs_p4_one_product = pa_r_hj32_local_total_rs_p4_one_product * pa_p_hj32_local_total_rs_p4_one_product))))))))
  29. 0029specialize htotal 4
  30. 0030specialize htotal 1
  31. 0031exact htotal
  32. 0032cases rs_p4_one
  33. 0033have rs_base : Lt(2,4)
    Exact native replay linehave rs_base : exists bqb_le_gap_hj32_rs_base. bqb_le_gap_hj32_rs_base + (3) = (4)
  34. 0034exists 1
  35. 0035norm_num
  36. 0036have rs_one_bound : Le(x3,x4)
    Exact native replay linehave rs_one_bound : exists bqb_le_gap_hj32_local_base_bound_rs_one_bound. bqb_le_gap_hj32_local_base_bound_rs_one_bound + (x3) = (x4)
  37. 0037specialize pow_base_monotone 3
  38. 0038specialize pow_base_monotone 4
  39. 0039specialize pow_base_monotone 1
  40. 0040specialize pow_base_monotone x3
  41. 0041specialize pow_base_monotone x4
  42. 0042apply pow_base_monotone
  43. 0043exact rs_base
  44. 0044exact rs_p3_one_witness
  45. 0045exact rs_p4_one_witness
  46. 0046have rs_p3_six : ∃ hj32_local_value_rs_p3_six. Pow(3,6,hj32_local_value_rs_p3_six)
    Exact native replay linehave rs_p3_six : exists hj32_local_value_rs_p3_six. (exists pa_b_hj32_local_total_rs_p3_six pa_c_hj32_local_total_rs_p3_six. ((forall pa_i_hj32_local_total_rs_p3_six_repeat. (exists pa_lt_hj32_local_total_rs_p3_six_repeat_bound. pa_lt_hj32_local_total_rs_p3_six_repeat_bound + S pa_i_hj32_local_total_rs_p3_six_repeat = 6) -> (((exists pa_h_hj32_local_total_rs_p3_six_repeat_decoded. pa_h_hj32_local_total_rs_p3_six_repeat_decoded + S (3) = S ((S (pa_i_hj32_local_total_rs_p3_six_repeat)) * pa_c_hj32_local_total_rs_p3_six)) /\ exists pa_q_hj32_local_total_rs_p3_six_repeat_decoded. pa_b_hj32_local_total_rs_p3_six = pa_q_hj32_local_total_rs_p3_six_repeat_decoded * S ((S (pa_i_hj32_local_total_rs_p3_six_repeat)) * pa_c_hj32_local_total_rs_p3_six) + (3)))) /\ (exists pa_u_hj32_local_total_rs_p3_six_product pa_v_hj32_local_total_rs_p3_six_product. ((((exists pa_h_hj32_local_total_rs_p3_six_product_start. pa_h_hj32_local_total_rs_p3_six_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_total_rs_p3_six_product)) /\ exists pa_q_hj32_local_total_rs_p3_six_product_start. pa_u_hj32_local_total_rs_p3_six_product = pa_q_hj32_local_total_rs_p3_six_product_start * S ((S (0)) * pa_v_hj32_local_total_rs_p3_six_product) + (1))) /\ ((((exists pa_h_hj32_local_total_rs_p3_six_product_terminal. pa_h_hj32_local_total_rs_p3_six_product_terminal + S (hj32_local_value_rs_p3_six) = S ((S (6)) * pa_v_hj32_local_total_rs_p3_six_product)) /\ exists pa_q_hj32_local_total_rs_p3_six_product_terminal. pa_u_hj32_local_total_rs_p3_six_product = pa_q_hj32_local_total_rs_p3_six_product_terminal * S ((S (6)) * pa_v_hj32_local_total_rs_p3_six_product) + (hj32_local_value_rs_p3_six))) /\ forall pa_i_hj32_local_total_rs_p3_six_product. (exists pa_lt_hj32_local_total_rs_p3_six_product_bound. pa_lt_hj32_local_total_rs_p3_six_product_bound + S pa_i_hj32_local_total_rs_p3_six_product = 6) -> exists pa_p_hj32_local_total_rs_p3_six_product pa_r_hj32_local_total_rs_p3_six_product pa_s_hj32_local_total_rs_p3_six_product. ((((exists pa_h_hj32_local_total_rs_p3_six_product_factor. pa_h_hj32_local_total_rs_p3_six_product_factor + S (pa_p_hj32_local_total_rs_p3_six_product) = S ((S (pa_i_hj32_local_total_rs_p3_six_product)) * pa_c_hj32_local_total_rs_p3_six)) /\ exists pa_q_hj32_local_total_rs_p3_six_product_factor. pa_b_hj32_local_total_rs_p3_six = pa_q_hj32_local_total_rs_p3_six_product_factor * S ((S (pa_i_hj32_local_total_rs_p3_six_product)) * pa_c_hj32_local_total_rs_p3_six) + (pa_p_hj32_local_total_rs_p3_six_product))) /\ ((((exists pa_h_hj32_local_total_rs_p3_six_product_partial. pa_h_hj32_local_total_rs_p3_six_product_partial + S (pa_r_hj32_local_total_rs_p3_six_product) = S ((S (pa_i_hj32_local_total_rs_p3_six_product)) * pa_v_hj32_local_total_rs_p3_six_product)) /\ exists pa_q_hj32_local_total_rs_p3_six_product_partial. pa_u_hj32_local_total_rs_p3_six_product = pa_q_hj32_local_total_rs_p3_six_product_partial * S ((S (pa_i_hj32_local_total_rs_p3_six_product)) * pa_v_hj32_local_total_rs_p3_six_product) + (pa_r_hj32_local_total_rs_p3_six_product))) /\ ((((exists pa_h_hj32_local_total_rs_p3_six_product_successor. pa_h_hj32_local_total_rs_p3_six_product_successor + S (pa_s_hj32_local_total_rs_p3_six_product) = S ((S (S pa_i_hj32_local_total_rs_p3_six_product)) * pa_v_hj32_local_total_rs_p3_six_product)) /\ exists pa_q_hj32_local_total_rs_p3_six_product_successor. pa_u_hj32_local_total_rs_p3_six_product = pa_q_hj32_local_total_rs_p3_six_product_successor * S ((S (S pa_i_hj32_local_total_rs_p3_six_product)) * pa_v_hj32_local_total_rs_p3_six_product) + (pa_s_hj32_local_total_rs_p3_six_product))) /\ pa_s_hj32_local_total_rs_p3_six_product = pa_r_hj32_local_total_rs_p3_six_product * pa_p_hj32_local_total_rs_p3_six_product))))))))
  47. 0047specialize htotal 3
  48. 0048specialize htotal 6
  49. 0049exact htotal
  50. 0050cases rs_p3_six
  51. 0051have rs_p4_five : ∃ hj32_local_value_rs_p4_five. Pow(4,5,hj32_local_value_rs_p4_five)
    Exact native replay linehave rs_p4_five : exists hj32_local_value_rs_p4_five. (exists pa_b_hj32_local_total_rs_p4_five pa_c_hj32_local_total_rs_p4_five. ((forall pa_i_hj32_local_total_rs_p4_five_repeat. (exists pa_lt_hj32_local_total_rs_p4_five_repeat_bound. pa_lt_hj32_local_total_rs_p4_five_repeat_bound + S pa_i_hj32_local_total_rs_p4_five_repeat = 5) -> (((exists pa_h_hj32_local_total_rs_p4_five_repeat_decoded. pa_h_hj32_local_total_rs_p4_five_repeat_decoded + S (4) = S ((S (pa_i_hj32_local_total_rs_p4_five_repeat)) * pa_c_hj32_local_total_rs_p4_five)) /\ exists pa_q_hj32_local_total_rs_p4_five_repeat_decoded. pa_b_hj32_local_total_rs_p4_five = pa_q_hj32_local_total_rs_p4_five_repeat_decoded * S ((S (pa_i_hj32_local_total_rs_p4_five_repeat)) * pa_c_hj32_local_total_rs_p4_five) + (4)))) /\ (exists pa_u_hj32_local_total_rs_p4_five_product pa_v_hj32_local_total_rs_p4_five_product. ((((exists pa_h_hj32_local_total_rs_p4_five_product_start. pa_h_hj32_local_total_rs_p4_five_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_total_rs_p4_five_product)) /\ exists pa_q_hj32_local_total_rs_p4_five_product_start. pa_u_hj32_local_total_rs_p4_five_product = pa_q_hj32_local_total_rs_p4_five_product_start * S ((S (0)) * pa_v_hj32_local_total_rs_p4_five_product) + (1))) /\ ((((exists pa_h_hj32_local_total_rs_p4_five_product_terminal. pa_h_hj32_local_total_rs_p4_five_product_terminal + S (hj32_local_value_rs_p4_five) = S ((S (5)) * pa_v_hj32_local_total_rs_p4_five_product)) /\ exists pa_q_hj32_local_total_rs_p4_five_product_terminal. pa_u_hj32_local_total_rs_p4_five_product = pa_q_hj32_local_total_rs_p4_five_product_terminal * S ((S (5)) * pa_v_hj32_local_total_rs_p4_five_product) + (hj32_local_value_rs_p4_five))) /\ forall pa_i_hj32_local_total_rs_p4_five_product. (exists pa_lt_hj32_local_total_rs_p4_five_product_bound. pa_lt_hj32_local_total_rs_p4_five_product_bound + S pa_i_hj32_local_total_rs_p4_five_product = 5) -> exists pa_p_hj32_local_total_rs_p4_five_product pa_r_hj32_local_total_rs_p4_five_product pa_s_hj32_local_total_rs_p4_five_product. ((((exists pa_h_hj32_local_total_rs_p4_five_product_factor. pa_h_hj32_local_total_rs_p4_five_product_factor + S (pa_p_hj32_local_total_rs_p4_five_product) = S ((S (pa_i_hj32_local_total_rs_p4_five_product)) * pa_c_hj32_local_total_rs_p4_five)) /\ exists pa_q_hj32_local_total_rs_p4_five_product_factor. pa_b_hj32_local_total_rs_p4_five = pa_q_hj32_local_total_rs_p4_five_product_factor * S ((S (pa_i_hj32_local_total_rs_p4_five_product)) * pa_c_hj32_local_total_rs_p4_five) + (pa_p_hj32_local_total_rs_p4_five_product))) /\ ((((exists pa_h_hj32_local_total_rs_p4_five_product_partial. pa_h_hj32_local_total_rs_p4_five_product_partial + S (pa_r_hj32_local_total_rs_p4_five_product) = S ((S (pa_i_hj32_local_total_rs_p4_five_product)) * pa_v_hj32_local_total_rs_p4_five_product)) /\ exists pa_q_hj32_local_total_rs_p4_five_product_partial. pa_u_hj32_local_total_rs_p4_five_product = pa_q_hj32_local_total_rs_p4_five_product_partial * S ((S (pa_i_hj32_local_total_rs_p4_five_product)) * pa_v_hj32_local_total_rs_p4_five_product) + (pa_r_hj32_local_total_rs_p4_five_product))) /\ ((((exists pa_h_hj32_local_total_rs_p4_five_product_successor. pa_h_hj32_local_total_rs_p4_five_product_successor + S (pa_s_hj32_local_total_rs_p4_five_product) = S ((S (S pa_i_hj32_local_total_rs_p4_five_product)) * pa_v_hj32_local_total_rs_p4_five_product)) /\ exists pa_q_hj32_local_total_rs_p4_five_product_successor. pa_u_hj32_local_total_rs_p4_five_product = pa_q_hj32_local_total_rs_p4_five_product_successor * S ((S (S pa_i_hj32_local_total_rs_p4_five_product)) * pa_v_hj32_local_total_rs_p4_five_product) + (pa_s_hj32_local_total_rs_p4_five_product))) /\ pa_s_hj32_local_total_rs_p4_five_product = pa_r_hj32_local_total_rs_p4_five_product * pa_p_hj32_local_total_rs_p4_five_product))))))))
  52. 0052specialize htotal 4
  53. 0053specialize htotal 5
  54. 0054exact htotal
  55. 0055cases rs_p4_five
  56. 0056have rs_three_product : x5 = x1 * x3
  57. 0057specialize pow_add 3
  58. 0058specialize pow_add 5
  59. 0059specialize pow_add 1
  60. 0060specialize pow_add 6
  61. 0061specialize pow_add x1
  62. 0062specialize pow_add x3
  63. 0063specialize pow_add x5
  64. 0064apply pow_add
  65. 0065norm_num
  66. 0066exact rs_p3_five_witness
  67. 0067exact rs_p3_one_witness
  68. 0068exact rs_p3_six_witness
  69. 0069have rs_four_product : x6 = x2 * x4
  70. 0070specialize pow_add 4
  71. 0071specialize pow_add 4
  72. 0072specialize pow_add 1
  73. 0073specialize pow_add 5
  74. 0074specialize pow_add x2
  75. 0075specialize pow_add x4
  76. 0076specialize pow_add x6
  77. 0077apply pow_add
  78. 0078norm_num
  79. 0079exact rs_p4_four_witness
  80. 0080exact rs_p4_one_witness
  81. 0081exact rs_p4_five_witness
  82. 0082have rs_three_bound : Le(x1 · x3,x2 · x4)
    Exact native replay linehave rs_three_bound : exists bqb_le_gap_hj32_local_product_bound_rs_three_bound. bqb_le_gap_hj32_local_product_bound_rs_three_bound + (x1 * x3) = (x2 * x4)
  83. 0083specialize mul_le_mul x1
  84. 0084specialize mul_le_mul x2
  85. 0085specialize mul_le_mul x3
  86. 0086specialize mul_le_mul x4
  87. 0087apply mul_le_mul
  88. 0088exact rs_seed
  89. 0089exact rs_one_bound
  90. 0090rewrite <- rs_three_product at rs_three_bound
  91. 0091rewrite <- rs_four_product at rs_three_bound
  92. 0092have rs_seeds : Pow(2,2,4)Pow(2,7,128)
    Exact native replay linehave rs_seeds : (exists pa_b_hj32_seed_two_two pa_c_hj32_seed_two_two. ((forall pa_i_hj32_seed_two_two_repeat. (exists pa_lt_hj32_seed_two_two_repeat_bound. pa_lt_hj32_seed_two_two_repeat_bound + S pa_i_hj32_seed_two_two_repeat = 2) -> (((exists pa_h_hj32_seed_two_two_repeat_decoded. pa_h_hj32_seed_two_two_repeat_decoded + S (2) = S ((S (pa_i_hj32_seed_two_two_repeat)) * pa_c_hj32_seed_two_two)) /\ exists pa_q_hj32_seed_two_two_repeat_decoded. pa_b_hj32_seed_two_two = pa_q_hj32_seed_two_two_repeat_decoded * S ((S (pa_i_hj32_seed_two_two_repeat)) * pa_c_hj32_seed_two_two) + (2)))) /\ (exists pa_u_hj32_seed_two_two_product pa_v_hj32_seed_two_two_product. ((((exists pa_h_hj32_seed_two_two_product_start. pa_h_hj32_seed_two_two_product_start + S (1) = S ((S (0)) * pa_v_hj32_seed_two_two_product)) /\ exists pa_q_hj32_seed_two_two_product_start. pa_u_hj32_seed_two_two_product = pa_q_hj32_seed_two_two_product_start * S ((S (0)) * pa_v_hj32_seed_two_two_product) + (1))) /\ ((((exists pa_h_hj32_seed_two_two_product_terminal. pa_h_hj32_seed_two_two_product_terminal + S (4) = S ((S (2)) * pa_v_hj32_seed_two_two_product)) /\ exists pa_q_hj32_seed_two_two_product_terminal. pa_u_hj32_seed_two_two_product = pa_q_hj32_seed_two_two_product_terminal * S ((S (2)) * pa_v_hj32_seed_two_two_product) + (4))) /\ forall pa_i_hj32_seed_two_two_product. (exists pa_lt_hj32_seed_two_two_product_bound. pa_lt_hj32_seed_two_two_product_bound + S pa_i_hj32_seed_two_two_product = 2) -> exists pa_p_hj32_seed_two_two_product pa_r_hj32_seed_two_two_product pa_s_hj32_seed_two_two_product. ((((exists pa_h_hj32_seed_two_two_product_factor. pa_h_hj32_seed_two_two_product_factor + S (pa_p_hj32_seed_two_two_product) = S ((S (pa_i_hj32_seed_two_two_product)) * pa_c_hj32_seed_two_two)) /\ exists pa_q_hj32_seed_two_two_product_factor. pa_b_hj32_seed_two_two = pa_q_hj32_seed_two_two_product_factor * S ((S (pa_i_hj32_seed_two_two_product)) * pa_c_hj32_seed_two_two) + (pa_p_hj32_seed_two_two_product))) /\ ((((exists pa_h_hj32_seed_two_two_product_partial. pa_h_hj32_seed_two_two_product_partial + S (pa_r_hj32_seed_two_two_product) = S ((S (pa_i_hj32_seed_two_two_product)) * pa_v_hj32_seed_two_two_product)) /\ exists pa_q_hj32_seed_two_two_product_partial. pa_u_hj32_seed_two_two_product = pa_q_hj32_seed_two_two_product_partial * S ((S (pa_i_hj32_seed_two_two_product)) * pa_v_hj32_seed_two_two_product) + (pa_r_hj32_seed_two_two_product))) /\ ((((exists pa_h_hj32_seed_two_two_product_successor. pa_h_hj32_seed_two_two_product_successor + S (pa_s_hj32_seed_two_two_product) = S ((S (S pa_i_hj32_seed_two_two_product)) * pa_v_hj32_seed_two_two_product)) /\ exists pa_q_hj32_seed_two_two_product_successor. pa_u_hj32_seed_two_two_product = pa_q_hj32_seed_two_two_product_successor * S ((S (S pa_i_hj32_seed_two_two_product)) * pa_v_hj32_seed_two_two_product) + (pa_s_hj32_seed_two_two_product))) /\ pa_s_hj32_seed_two_two_product = pa_r_hj32_seed_two_two_product * pa_p_hj32_seed_two_two_product)))))))) /\ (exists pa_b_hj32_seed_two_seven pa_c_hj32_seed_two_seven. ((forall pa_i_hj32_seed_two_seven_repeat. (exists pa_lt_hj32_seed_two_seven_repeat_bound. pa_lt_hj32_seed_two_seven_repeat_bound + S pa_i_hj32_seed_two_seven_repeat = 7) -> (((exists pa_h_hj32_seed_two_seven_repeat_decoded. pa_h_hj32_seed_two_seven_repeat_decoded + S (2) = S ((S (pa_i_hj32_seed_two_seven_repeat)) * pa_c_hj32_seed_two_seven)) /\ exists pa_q_hj32_seed_two_seven_repeat_decoded. pa_b_hj32_seed_two_seven = pa_q_hj32_seed_two_seven_repeat_decoded * S ((S (pa_i_hj32_seed_two_seven_repeat)) * pa_c_hj32_seed_two_seven) + (2)))) /\ (exists pa_u_hj32_seed_two_seven_product pa_v_hj32_seed_two_seven_product. ((((exists pa_h_hj32_seed_two_seven_product_start. pa_h_hj32_seed_two_seven_product_start + S (1) = S ((S (0)) * pa_v_hj32_seed_two_seven_product)) /\ exists pa_q_hj32_seed_two_seven_product_start. pa_u_hj32_seed_two_seven_product = pa_q_hj32_seed_two_seven_product_start * S ((S (0)) * pa_v_hj32_seed_two_seven_product) + (1))) /\ ((((exists pa_h_hj32_seed_two_seven_product_terminal. pa_h_hj32_seed_two_seven_product_terminal + S (128) = S ((S (7)) * pa_v_hj32_seed_two_seven_product)) /\ exists pa_q_hj32_seed_two_seven_product_terminal. pa_u_hj32_seed_two_seven_product = pa_q_hj32_seed_two_seven_product_terminal * S ((S (7)) * pa_v_hj32_seed_two_seven_product) + (128))) /\ forall pa_i_hj32_seed_two_seven_product. (exists pa_lt_hj32_seed_two_seven_product_bound. pa_lt_hj32_seed_two_seven_product_bound + S pa_i_hj32_seed_two_seven_product = 7) -> exists pa_p_hj32_seed_two_seven_product pa_r_hj32_seed_two_seven_product pa_s_hj32_seed_two_seven_product. ((((exists pa_h_hj32_seed_two_seven_product_factor. pa_h_hj32_seed_two_seven_product_factor + S (pa_p_hj32_seed_two_seven_product) = S ((S (pa_i_hj32_seed_two_seven_product)) * pa_c_hj32_seed_two_seven)) /\ exists pa_q_hj32_seed_two_seven_product_factor. pa_b_hj32_seed_two_seven = pa_q_hj32_seed_two_seven_product_factor * S ((S (pa_i_hj32_seed_two_seven_product)) * pa_c_hj32_seed_two_seven) + (pa_p_hj32_seed_two_seven_product))) /\ ((((exists pa_h_hj32_seed_two_seven_product_partial. pa_h_hj32_seed_two_seven_product_partial + S (pa_r_hj32_seed_two_seven_product) = S ((S (pa_i_hj32_seed_two_seven_product)) * pa_v_hj32_seed_two_seven_product)) /\ exists pa_q_hj32_seed_two_seven_product_partial. pa_u_hj32_seed_two_seven_product = pa_q_hj32_seed_two_seven_product_partial * S ((S (pa_i_hj32_seed_two_seven_product)) * pa_v_hj32_seed_two_seven_product) + (pa_r_hj32_seed_two_seven_product))) /\ ((((exists pa_h_hj32_seed_two_seven_product_successor. pa_h_hj32_seed_two_seven_product_successor + S (pa_s_hj32_seed_two_seven_product) = S ((S (S pa_i_hj32_seed_two_seven_product)) * pa_v_hj32_seed_two_seven_product)) /\ exists pa_q_hj32_seed_two_seven_product_successor. pa_u_hj32_seed_two_seven_product = pa_q_hj32_seed_two_seven_product_successor * S ((S (S pa_i_hj32_seed_two_seven_product)) * pa_v_hj32_seed_two_seven_product) + (pa_s_hj32_seed_two_seven_product))) /\ pa_s_hj32_seed_two_seven_product = pa_r_hj32_seed_two_seven_product * pa_p_hj32_seed_two_seven_product))))))))
  93. 0093apply pow_two_seed_bundle_from_total
  94. 0094exact htotal
  95. 0095cases rs_seeds
  96. 0096have rs_p2_six : ∃ hj32_local_value_rs_p2_six. Pow(2,6,hj32_local_value_rs_p2_six)
    Exact native replay linehave rs_p2_six : exists hj32_local_value_rs_p2_six. (exists pa_b_hj32_local_total_rs_p2_six pa_c_hj32_local_total_rs_p2_six. ((forall pa_i_hj32_local_total_rs_p2_six_repeat. (exists pa_lt_hj32_local_total_rs_p2_six_repeat_bound. pa_lt_hj32_local_total_rs_p2_six_repeat_bound + S pa_i_hj32_local_total_rs_p2_six_repeat = 6) -> (((exists pa_h_hj32_local_total_rs_p2_six_repeat_decoded. pa_h_hj32_local_total_rs_p2_six_repeat_decoded + S (2) = S ((S (pa_i_hj32_local_total_rs_p2_six_repeat)) * pa_c_hj32_local_total_rs_p2_six)) /\ exists pa_q_hj32_local_total_rs_p2_six_repeat_decoded. pa_b_hj32_local_total_rs_p2_six = pa_q_hj32_local_total_rs_p2_six_repeat_decoded * S ((S (pa_i_hj32_local_total_rs_p2_six_repeat)) * pa_c_hj32_local_total_rs_p2_six) + (2)))) /\ (exists pa_u_hj32_local_total_rs_p2_six_product pa_v_hj32_local_total_rs_p2_six_product. ((((exists pa_h_hj32_local_total_rs_p2_six_product_start. pa_h_hj32_local_total_rs_p2_six_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_total_rs_p2_six_product)) /\ exists pa_q_hj32_local_total_rs_p2_six_product_start. pa_u_hj32_local_total_rs_p2_six_product = pa_q_hj32_local_total_rs_p2_six_product_start * S ((S (0)) * pa_v_hj32_local_total_rs_p2_six_product) + (1))) /\ ((((exists pa_h_hj32_local_total_rs_p2_six_product_terminal. pa_h_hj32_local_total_rs_p2_six_product_terminal + S (hj32_local_value_rs_p2_six) = S ((S (6)) * pa_v_hj32_local_total_rs_p2_six_product)) /\ exists pa_q_hj32_local_total_rs_p2_six_product_terminal. pa_u_hj32_local_total_rs_p2_six_product = pa_q_hj32_local_total_rs_p2_six_product_terminal * S ((S (6)) * pa_v_hj32_local_total_rs_p2_six_product) + (hj32_local_value_rs_p2_six))) /\ forall pa_i_hj32_local_total_rs_p2_six_product. (exists pa_lt_hj32_local_total_rs_p2_six_product_bound. pa_lt_hj32_local_total_rs_p2_six_product_bound + S pa_i_hj32_local_total_rs_p2_six_product = 6) -> exists pa_p_hj32_local_total_rs_p2_six_product pa_r_hj32_local_total_rs_p2_six_product pa_s_hj32_local_total_rs_p2_six_product. ((((exists pa_h_hj32_local_total_rs_p2_six_product_factor. pa_h_hj32_local_total_rs_p2_six_product_factor + S (pa_p_hj32_local_total_rs_p2_six_product) = S ((S (pa_i_hj32_local_total_rs_p2_six_product)) * pa_c_hj32_local_total_rs_p2_six)) /\ exists pa_q_hj32_local_total_rs_p2_six_product_factor. pa_b_hj32_local_total_rs_p2_six = pa_q_hj32_local_total_rs_p2_six_product_factor * S ((S (pa_i_hj32_local_total_rs_p2_six_product)) * pa_c_hj32_local_total_rs_p2_six) + (pa_p_hj32_local_total_rs_p2_six_product))) /\ ((((exists pa_h_hj32_local_total_rs_p2_six_product_partial. pa_h_hj32_local_total_rs_p2_six_product_partial + S (pa_r_hj32_local_total_rs_p2_six_product) = S ((S (pa_i_hj32_local_total_rs_p2_six_product)) * pa_v_hj32_local_total_rs_p2_six_product)) /\ exists pa_q_hj32_local_total_rs_p2_six_product_partial. pa_u_hj32_local_total_rs_p2_six_product = pa_q_hj32_local_total_rs_p2_six_product_partial * S ((S (pa_i_hj32_local_total_rs_p2_six_product)) * pa_v_hj32_local_total_rs_p2_six_product) + (pa_r_hj32_local_total_rs_p2_six_product))) /\ ((((exists pa_h_hj32_local_total_rs_p2_six_product_successor. pa_h_hj32_local_total_rs_p2_six_product_successor + S (pa_s_hj32_local_total_rs_p2_six_product) = S ((S (S pa_i_hj32_local_total_rs_p2_six_product)) * pa_v_hj32_local_total_rs_p2_six_product)) /\ exists pa_q_hj32_local_total_rs_p2_six_product_successor. pa_u_hj32_local_total_rs_p2_six_product = pa_q_hj32_local_total_rs_p2_six_product_successor * S ((S (S pa_i_hj32_local_total_rs_p2_six_product)) * pa_v_hj32_local_total_rs_p2_six_product) + (pa_s_hj32_local_total_rs_p2_six_product))) /\ pa_s_hj32_local_total_rs_p2_six_product = pa_r_hj32_local_total_rs_p2_six_product * pa_p_hj32_local_total_rs_p2_six_product))))))))
  97. 0097specialize htotal 2
  98. 0098specialize htotal 6
  99. 0099exact htotal
  100. 0100cases rs_p2_six
  101. 0101have rs_p4_three : ∃ hj32_local_value_rs_p4_three. Pow(4,3,hj32_local_value_rs_p4_three)
    Exact native replay linehave rs_p4_three : exists hj32_local_value_rs_p4_three. (exists pa_b_hj32_local_total_rs_p4_three pa_c_hj32_local_total_rs_p4_three. ((forall pa_i_hj32_local_total_rs_p4_three_repeat. (exists pa_lt_hj32_local_total_rs_p4_three_repeat_bound. pa_lt_hj32_local_total_rs_p4_three_repeat_bound + S pa_i_hj32_local_total_rs_p4_three_repeat = 3) -> (((exists pa_h_hj32_local_total_rs_p4_three_repeat_decoded. pa_h_hj32_local_total_rs_p4_three_repeat_decoded + S (4) = S ((S (pa_i_hj32_local_total_rs_p4_three_repeat)) * pa_c_hj32_local_total_rs_p4_three)) /\ exists pa_q_hj32_local_total_rs_p4_three_repeat_decoded. pa_b_hj32_local_total_rs_p4_three = pa_q_hj32_local_total_rs_p4_three_repeat_decoded * S ((S (pa_i_hj32_local_total_rs_p4_three_repeat)) * pa_c_hj32_local_total_rs_p4_three) + (4)))) /\ (exists pa_u_hj32_local_total_rs_p4_three_product pa_v_hj32_local_total_rs_p4_three_product. ((((exists pa_h_hj32_local_total_rs_p4_three_product_start. pa_h_hj32_local_total_rs_p4_three_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_total_rs_p4_three_product)) /\ exists pa_q_hj32_local_total_rs_p4_three_product_start. pa_u_hj32_local_total_rs_p4_three_product = pa_q_hj32_local_total_rs_p4_three_product_start * S ((S (0)) * pa_v_hj32_local_total_rs_p4_three_product) + (1))) /\ ((((exists pa_h_hj32_local_total_rs_p4_three_product_terminal. pa_h_hj32_local_total_rs_p4_three_product_terminal + S (hj32_local_value_rs_p4_three) = S ((S (3)) * pa_v_hj32_local_total_rs_p4_three_product)) /\ exists pa_q_hj32_local_total_rs_p4_three_product_terminal. pa_u_hj32_local_total_rs_p4_three_product = pa_q_hj32_local_total_rs_p4_three_product_terminal * S ((S (3)) * pa_v_hj32_local_total_rs_p4_three_product) + (hj32_local_value_rs_p4_three))) /\ forall pa_i_hj32_local_total_rs_p4_three_product. (exists pa_lt_hj32_local_total_rs_p4_three_product_bound. pa_lt_hj32_local_total_rs_p4_three_product_bound + S pa_i_hj32_local_total_rs_p4_three_product = 3) -> exists pa_p_hj32_local_total_rs_p4_three_product pa_r_hj32_local_total_rs_p4_three_product pa_s_hj32_local_total_rs_p4_three_product. ((((exists pa_h_hj32_local_total_rs_p4_three_product_factor. pa_h_hj32_local_total_rs_p4_three_product_factor + S (pa_p_hj32_local_total_rs_p4_three_product) = S ((S (pa_i_hj32_local_total_rs_p4_three_product)) * pa_c_hj32_local_total_rs_p4_three)) /\ exists pa_q_hj32_local_total_rs_p4_three_product_factor. pa_b_hj32_local_total_rs_p4_three = pa_q_hj32_local_total_rs_p4_three_product_factor * S ((S (pa_i_hj32_local_total_rs_p4_three_product)) * pa_c_hj32_local_total_rs_p4_three) + (pa_p_hj32_local_total_rs_p4_three_product))) /\ ((((exists pa_h_hj32_local_total_rs_p4_three_product_partial. pa_h_hj32_local_total_rs_p4_three_product_partial + S (pa_r_hj32_local_total_rs_p4_three_product) = S ((S (pa_i_hj32_local_total_rs_p4_three_product)) * pa_v_hj32_local_total_rs_p4_three_product)) /\ exists pa_q_hj32_local_total_rs_p4_three_product_partial. pa_u_hj32_local_total_rs_p4_three_product = pa_q_hj32_local_total_rs_p4_three_product_partial * S ((S (pa_i_hj32_local_total_rs_p4_three_product)) * pa_v_hj32_local_total_rs_p4_three_product) + (pa_r_hj32_local_total_rs_p4_three_product))) /\ ((((exists pa_h_hj32_local_total_rs_p4_three_product_successor. pa_h_hj32_local_total_rs_p4_three_product_successor + S (pa_s_hj32_local_total_rs_p4_three_product) = S ((S (S pa_i_hj32_local_total_rs_p4_three_product)) * pa_v_hj32_local_total_rs_p4_three_product)) /\ exists pa_q_hj32_local_total_rs_p4_three_product_successor. pa_u_hj32_local_total_rs_p4_three_product = pa_q_hj32_local_total_rs_p4_three_product_successor * S ((S (S pa_i_hj32_local_total_rs_p4_three_product)) * pa_v_hj32_local_total_rs_p4_three_product) + (pa_s_hj32_local_total_rs_p4_three_product))) /\ pa_s_hj32_local_total_rs_p4_three_product = pa_r_hj32_local_total_rs_p4_three_product * pa_p_hj32_local_total_rs_p4_three_product))))))))
  102. 0102specialize htotal 4
  103. 0103specialize htotal 3
  104. 0104exact htotal
  105. 0105cases rs_p4_three
  106. 0106have rs_two_bridge : x8 = x7
  107. 0107specialize pow_mul_exp_from_total 2
  108. 0108specialize pow_mul_exp_from_total 2
  109. 0109specialize pow_mul_exp_from_total 3
  110. 0110specialize pow_mul_exp_from_total 6
  111. 0111specialize pow_mul_exp_from_total 4
  112. 0112specialize pow_mul_exp_from_total x8
  113. 0113specialize pow_mul_exp_from_total x7
  114. 0114apply pow_mul_exp_from_total
  115. 0115exact htotal
  116. 0116norm_num
  117. 0117exact rs_seeds_left
  118. 0118exact rs_p4_three_witness
  119. 0119exact rs_p2_six_witness
  120. 0120have rs_two_bound : Le(x7,x8)
    Exact native replay linehave rs_two_bound : exists bqb_le_gap_hj32_rs_two_bound. bqb_le_gap_hj32_rs_two_bound + (x7) = (x8)
  121. 0121rewrite rs_two_bridge
  122. 0122specialize le_refl x7
  123. 0123exact le_refl
  124. 0124have rs_six_product_graph : Pow(2 · 3,6,x)
    Exact native replay linehave rs_six_product_graph : exists pa_b_hj32_local_product_rs_six_product pa_c_hj32_local_product_rs_six_product. ((forall pa_i_hj32_local_product_rs_six_product_repeat. (exists pa_lt_hj32_local_product_rs_six_product_repeat_bound. pa_lt_hj32_local_product_rs_six_product_repeat_bound + S pa_i_hj32_local_product_rs_six_product_repeat = 6) -> (((exists pa_h_hj32_local_product_rs_six_product_repeat_decoded. pa_h_hj32_local_product_rs_six_product_repeat_decoded + S (2 * 3) = S ((S (pa_i_hj32_local_product_rs_six_product_repeat)) * pa_c_hj32_local_product_rs_six_product)) /\ exists pa_q_hj32_local_product_rs_six_product_repeat_decoded. pa_b_hj32_local_product_rs_six_product = pa_q_hj32_local_product_rs_six_product_repeat_decoded * S ((S (pa_i_hj32_local_product_rs_six_product_repeat)) * pa_c_hj32_local_product_rs_six_product) + (2 * 3)))) /\ (exists pa_u_hj32_local_product_rs_six_product_product pa_v_hj32_local_product_rs_six_product_product. ((((exists pa_h_hj32_local_product_rs_six_product_product_start. pa_h_hj32_local_product_rs_six_product_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_product_rs_six_product_product)) /\ exists pa_q_hj32_local_product_rs_six_product_product_start. pa_u_hj32_local_product_rs_six_product_product = pa_q_hj32_local_product_rs_six_product_product_start * S ((S (0)) * pa_v_hj32_local_product_rs_six_product_product) + (1))) /\ ((((exists pa_h_hj32_local_product_rs_six_product_product_terminal. pa_h_hj32_local_product_rs_six_product_product_terminal + S (x) = S ((S (6)) * pa_v_hj32_local_product_rs_six_product_product)) /\ exists pa_q_hj32_local_product_rs_six_product_product_terminal. pa_u_hj32_local_product_rs_six_product_product = pa_q_hj32_local_product_rs_six_product_product_terminal * S ((S (6)) * pa_v_hj32_local_product_rs_six_product_product) + (x))) /\ forall pa_i_hj32_local_product_rs_six_product_product. (exists pa_lt_hj32_local_product_rs_six_product_product_bound. pa_lt_hj32_local_product_rs_six_product_product_bound + S pa_i_hj32_local_product_rs_six_product_product = 6) -> exists pa_p_hj32_local_product_rs_six_product_product pa_r_hj32_local_product_rs_six_product_product pa_s_hj32_local_product_rs_six_product_product. ((((exists pa_h_hj32_local_product_rs_six_product_product_factor. pa_h_hj32_local_product_rs_six_product_product_factor + S (pa_p_hj32_local_product_rs_six_product_product) = S ((S (pa_i_hj32_local_product_rs_six_product_product)) * pa_c_hj32_local_product_rs_six_product)) /\ exists pa_q_hj32_local_product_rs_six_product_product_factor. pa_b_hj32_local_product_rs_six_product = pa_q_hj32_local_product_rs_six_product_product_factor * S ((S (pa_i_hj32_local_product_rs_six_product_product)) * pa_c_hj32_local_product_rs_six_product) + (pa_p_hj32_local_product_rs_six_product_product))) /\ ((((exists pa_h_hj32_local_product_rs_six_product_product_partial. pa_h_hj32_local_product_rs_six_product_product_partial + S (pa_r_hj32_local_product_rs_six_product_product) = S ((S (pa_i_hj32_local_product_rs_six_product_product)) * pa_v_hj32_local_product_rs_six_product_product)) /\ exists pa_q_hj32_local_product_rs_six_product_product_partial. pa_u_hj32_local_product_rs_six_product_product = pa_q_hj32_local_product_rs_six_product_product_partial * S ((S (pa_i_hj32_local_product_rs_six_product_product)) * pa_v_hj32_local_product_rs_six_product_product) + (pa_r_hj32_local_product_rs_six_product_product))) /\ ((((exists pa_h_hj32_local_product_rs_six_product_product_successor. pa_h_hj32_local_product_rs_six_product_product_successor + S (pa_s_hj32_local_product_rs_six_product_product) = S ((S (S pa_i_hj32_local_product_rs_six_product_product)) * pa_v_hj32_local_product_rs_six_product_product)) /\ exists pa_q_hj32_local_product_rs_six_product_product_successor. pa_u_hj32_local_product_rs_six_product_product = pa_q_hj32_local_product_rs_six_product_product_successor * S ((S (S pa_i_hj32_local_product_rs_six_product_product)) * pa_v_hj32_local_product_rs_six_product_product) + (pa_s_hj32_local_product_rs_six_product_product))) /\ pa_s_hj32_local_product_rs_six_product_product = pa_r_hj32_local_product_rs_six_product_product * pa_p_hj32_local_product_rs_six_product_product)))))))
  125. 0125have rs_six_product_base : 2 * 3 = 6
  126. 0126norm_num
  127. 0127rewrite rs_six_product_base
  128. 0128rewrite rs_six_product_base
  129. 0129exact hx
  130. 0130have rs_six_product : x = x7 * x5
  131. 0131specialize pow_mul_base 2
  132. 0132specialize pow_mul_base 3
  133. 0133specialize pow_mul_base 6
  134. 0134specialize pow_mul_base x7
  135. 0135specialize pow_mul_base x5
  136. 0136specialize pow_mul_base x
  137. 0137apply pow_mul_base
  138. 0138exact rs_p2_six_witness
  139. 0139exact rs_p3_six_witness
  140. 0140exact rs_six_product_graph
  141. 0141have rs_eight_product : y = x8 * x6
  142. 0142specialize pow_add 4
  143. 0143specialize pow_add 3
  144. 0144specialize pow_add 5
  145. 0145specialize pow_add 8
  146. 0146specialize pow_add x8
  147. 0147specialize pow_add x6
  148. 0148specialize pow_add y
  149. 0149apply pow_add
  150. 0150norm_num
  151. 0151exact rs_p4_three_witness
  152. 0152exact rs_p4_five_witness
  153. 0153exact hy
  154. 0154have rs_result : Le(x7 · x5,x8 · x6)
    Exact native replay linehave rs_result : exists bqb_le_gap_hj32_local_product_bound_rs_result. bqb_le_gap_hj32_local_product_bound_rs_result + (x7 * x5) = (x8 * x6)
  155. 0155specialize mul_le_mul x7
  156. 0156specialize mul_le_mul x8
  157. 0157specialize mul_le_mul x5
  158. 0158specialize mul_le_mul x6
  159. 0159apply mul_le_mul
  160. 0160exact rs_two_bound
  161. 0161exact rs_three_bound
  162. 0162rewrite <- rs_six_product at rs_result
  163. 0163rewrite <- rs_eight_product at rs_result
  164. 0164exact rs_result