BT00WG · Bertrand theorem

pow_six_four_le_pow_four_six_from_total

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

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

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,4,x)Pow(4,6,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

11 occurrences

Exact expanded native-PA statement
forall x y. (forall bpt_a_hj32_residual_four bpt_e_hj32_residual_four. exists bpt_x_hj32_residual_four. (exists ff_b_bpt_value_hj32_residual_four ff_c_bpt_value_hj32_residual_four. ((forall ff_i_bpt_value_hj32_residual_four_repeat. (exists ff_lt_bpt_value_hj32_residual_four_repeat_bound. ff_lt_bpt_value_hj32_residual_four_repeat_bound + S ff_i_bpt_value_hj32_residual_four_repeat = bpt_e_hj32_residual_four) -> (((exists ff_h_bpt_value_hj32_residual_four_repeat_decoded. ff_h_bpt_value_hj32_residual_four_repeat_decoded + S (bpt_a_hj32_residual_four) = S ((S (ff_i_bpt_value_hj32_residual_four_repeat)) * ff_c_bpt_value_hj32_residual_four)) /\ exists ff_q_bpt_value_hj32_residual_four_repeat_decoded. ff_b_bpt_value_hj32_residual_four = ff_q_bpt_value_hj32_residual_four_repeat_decoded * S ((S (ff_i_bpt_value_hj32_residual_four_repeat)) * ff_c_bpt_value_hj32_residual_four) + (bpt_a_hj32_residual_four)))) /\ (exists ff_u_bpt_value_hj32_residual_four_product ff_v_bpt_value_hj32_residual_four_product. ((((exists ff_h_bpt_value_hj32_residual_four_product_start. ff_h_bpt_value_hj32_residual_four_product_start + S (1) = S ((S (0)) * ff_v_bpt_value_hj32_residual_four_product)) /\ exists ff_q_bpt_value_hj32_residual_four_product_start. ff_u_bpt_value_hj32_residual_four_product = ff_q_bpt_value_hj32_residual_four_product_start * S ((S (0)) * ff_v_bpt_value_hj32_residual_four_product) + (1))) /\ ((((exists ff_h_bpt_value_hj32_residual_four_product_terminal. ff_h_bpt_value_hj32_residual_four_product_terminal + S (bpt_x_hj32_residual_four) = S ((S (bpt_e_hj32_residual_four)) * ff_v_bpt_value_hj32_residual_four_product)) /\ exists ff_q_bpt_value_hj32_residual_four_product_terminal. ff_u_bpt_value_hj32_residual_four_product = ff_q_bpt_value_hj32_residual_four_product_terminal * S ((S (bpt_e_hj32_residual_four)) * ff_v_bpt_value_hj32_residual_four_product) + (bpt_x_hj32_residual_four))) /\ forall ff_i_bpt_value_hj32_residual_four_product. (exists ff_lt_bpt_value_hj32_residual_four_product_bound. ff_lt_bpt_value_hj32_residual_four_product_bound + S ff_i_bpt_value_hj32_residual_four_product = bpt_e_hj32_residual_four) -> exists ff_p_bpt_value_hj32_residual_four_product ff_r_bpt_value_hj32_residual_four_product ff_s_bpt_value_hj32_residual_four_product. ((((exists ff_h_bpt_value_hj32_residual_four_product_factor. ff_h_bpt_value_hj32_residual_four_product_factor + S (ff_p_bpt_value_hj32_residual_four_product) = S ((S (ff_i_bpt_value_hj32_residual_four_product)) * ff_c_bpt_value_hj32_residual_four)) /\ exists ff_q_bpt_value_hj32_residual_four_product_factor. ff_b_bpt_value_hj32_residual_four = ff_q_bpt_value_hj32_residual_four_product_factor * S ((S (ff_i_bpt_value_hj32_residual_four_product)) * ff_c_bpt_value_hj32_residual_four) + (ff_p_bpt_value_hj32_residual_four_product))) /\ ((((exists ff_h_bpt_value_hj32_residual_four_product_partial. ff_h_bpt_value_hj32_residual_four_product_partial + S (ff_r_bpt_value_hj32_residual_four_product) = S ((S (ff_i_bpt_value_hj32_residual_four_product)) * ff_v_bpt_value_hj32_residual_four_product)) /\ exists ff_q_bpt_value_hj32_residual_four_product_partial. ff_u_bpt_value_hj32_residual_four_product = ff_q_bpt_value_hj32_residual_four_product_partial * S ((S (ff_i_bpt_value_hj32_residual_four_product)) * ff_v_bpt_value_hj32_residual_four_product) + (ff_r_bpt_value_hj32_residual_four_product))) /\ ((((exists ff_h_bpt_value_hj32_residual_four_product_successor. ff_h_bpt_value_hj32_residual_four_product_successor + S (ff_s_bpt_value_hj32_residual_four_product) = S ((S (S ff_i_bpt_value_hj32_residual_four_product)) * ff_v_bpt_value_hj32_residual_four_product)) /\ exists ff_q_bpt_value_hj32_residual_four_product_successor. ff_u_bpt_value_hj32_residual_four_product = ff_q_bpt_value_hj32_residual_four_product_successor * S ((S (S ff_i_bpt_value_hj32_residual_four_product)) * ff_v_bpt_value_hj32_residual_four_product) + (ff_s_bpt_value_hj32_residual_four_product))) /\ ff_s_bpt_value_hj32_residual_four_product = ff_r_bpt_value_hj32_residual_four_product * ff_p_bpt_value_hj32_residual_four_product))))))))) -> (exists pa_b_hj32_residual_four_left pa_c_hj32_residual_four_left. ((forall pa_i_hj32_residual_four_left_repeat. (exists pa_lt_hj32_residual_four_left_repeat_bound. pa_lt_hj32_residual_four_left_repeat_bound + S pa_i_hj32_residual_four_left_repeat = 4) -> (((exists pa_h_hj32_residual_four_left_repeat_decoded. pa_h_hj32_residual_four_left_repeat_decoded + S (6) = S ((S (pa_i_hj32_residual_four_left_repeat)) * pa_c_hj32_residual_four_left)) /\ exists pa_q_hj32_residual_four_left_repeat_decoded. pa_b_hj32_residual_four_left = pa_q_hj32_residual_four_left_repeat_decoded * S ((S (pa_i_hj32_residual_four_left_repeat)) * pa_c_hj32_residual_four_left) + (6)))) /\ (exists pa_u_hj32_residual_four_left_product pa_v_hj32_residual_four_left_product. ((((exists pa_h_hj32_residual_four_left_product_start. pa_h_hj32_residual_four_left_product_start + S (1) = S ((S (0)) * pa_v_hj32_residual_four_left_product)) /\ exists pa_q_hj32_residual_four_left_product_start. pa_u_hj32_residual_four_left_product = pa_q_hj32_residual_four_left_product_start * S ((S (0)) * pa_v_hj32_residual_four_left_product) + (1))) /\ ((((exists pa_h_hj32_residual_four_left_product_terminal. pa_h_hj32_residual_four_left_product_terminal + S (x) = S ((S (4)) * pa_v_hj32_residual_four_left_product)) /\ exists pa_q_hj32_residual_four_left_product_terminal. pa_u_hj32_residual_four_left_product = pa_q_hj32_residual_four_left_product_terminal * S ((S (4)) * pa_v_hj32_residual_four_left_product) + (x))) /\ forall pa_i_hj32_residual_four_left_product. (exists pa_lt_hj32_residual_four_left_product_bound. pa_lt_hj32_residual_four_left_product_bound + S pa_i_hj32_residual_four_left_product = 4) -> exists pa_p_hj32_residual_four_left_product pa_r_hj32_residual_four_left_product pa_s_hj32_residual_four_left_product. ((((exists pa_h_hj32_residual_four_left_product_factor. pa_h_hj32_residual_four_left_product_factor + S (pa_p_hj32_residual_four_left_product) = S ((S (pa_i_hj32_residual_four_left_product)) * pa_c_hj32_residual_four_left)) /\ exists pa_q_hj32_residual_four_left_product_factor. pa_b_hj32_residual_four_left = pa_q_hj32_residual_four_left_product_factor * S ((S (pa_i_hj32_residual_four_left_product)) * pa_c_hj32_residual_four_left) + (pa_p_hj32_residual_four_left_product))) /\ ((((exists pa_h_hj32_residual_four_left_product_partial. pa_h_hj32_residual_four_left_product_partial + S (pa_r_hj32_residual_four_left_product) = S ((S (pa_i_hj32_residual_four_left_product)) * pa_v_hj32_residual_four_left_product)) /\ exists pa_q_hj32_residual_four_left_product_partial. pa_u_hj32_residual_four_left_product = pa_q_hj32_residual_four_left_product_partial * S ((S (pa_i_hj32_residual_four_left_product)) * pa_v_hj32_residual_four_left_product) + (pa_r_hj32_residual_four_left_product))) /\ ((((exists pa_h_hj32_residual_four_left_product_successor. pa_h_hj32_residual_four_left_product_successor + S (pa_s_hj32_residual_four_left_product) = S ((S (S pa_i_hj32_residual_four_left_product)) * pa_v_hj32_residual_four_left_product)) /\ exists pa_q_hj32_residual_four_left_product_successor. pa_u_hj32_residual_four_left_product = pa_q_hj32_residual_four_left_product_successor * S ((S (S pa_i_hj32_residual_four_left_product)) * pa_v_hj32_residual_four_left_product) + (pa_s_hj32_residual_four_left_product))) /\ pa_s_hj32_residual_four_left_product = pa_r_hj32_residual_four_left_product * pa_p_hj32_residual_four_left_product)))))))) -> (exists pa_b_hj32_residual_four_right pa_c_hj32_residual_four_right. ((forall pa_i_hj32_residual_four_right_repeat. (exists pa_lt_hj32_residual_four_right_repeat_bound. pa_lt_hj32_residual_four_right_repeat_bound + S pa_i_hj32_residual_four_right_repeat = 6) -> (((exists pa_h_hj32_residual_four_right_repeat_decoded. pa_h_hj32_residual_four_right_repeat_decoded + S (4) = S ((S (pa_i_hj32_residual_four_right_repeat)) * pa_c_hj32_residual_four_right)) /\ exists pa_q_hj32_residual_four_right_repeat_decoded. pa_b_hj32_residual_four_right = pa_q_hj32_residual_four_right_repeat_decoded * S ((S (pa_i_hj32_residual_four_right_repeat)) * pa_c_hj32_residual_four_right) + (4)))) /\ (exists pa_u_hj32_residual_four_right_product pa_v_hj32_residual_four_right_product. ((((exists pa_h_hj32_residual_four_right_product_start. pa_h_hj32_residual_four_right_product_start + S (1) = S ((S (0)) * pa_v_hj32_residual_four_right_product)) /\ exists pa_q_hj32_residual_four_right_product_start. pa_u_hj32_residual_four_right_product = pa_q_hj32_residual_four_right_product_start * S ((S (0)) * pa_v_hj32_residual_four_right_product) + (1))) /\ ((((exists pa_h_hj32_residual_four_right_product_terminal. pa_h_hj32_residual_four_right_product_terminal + S (y) = S ((S (6)) * pa_v_hj32_residual_four_right_product)) /\ exists pa_q_hj32_residual_four_right_product_terminal. pa_u_hj32_residual_four_right_product = pa_q_hj32_residual_four_right_product_terminal * S ((S (6)) * pa_v_hj32_residual_four_right_product) + (y))) /\ forall pa_i_hj32_residual_four_right_product. (exists pa_lt_hj32_residual_four_right_product_bound. pa_lt_hj32_residual_four_right_product_bound + S pa_i_hj32_residual_four_right_product = 6) -> exists pa_p_hj32_residual_four_right_product pa_r_hj32_residual_four_right_product pa_s_hj32_residual_four_right_product. ((((exists pa_h_hj32_residual_four_right_product_factor. pa_h_hj32_residual_four_right_product_factor + S (pa_p_hj32_residual_four_right_product) = S ((S (pa_i_hj32_residual_four_right_product)) * pa_c_hj32_residual_four_right)) /\ exists pa_q_hj32_residual_four_right_product_factor. pa_b_hj32_residual_four_right = pa_q_hj32_residual_four_right_product_factor * S ((S (pa_i_hj32_residual_four_right_product)) * pa_c_hj32_residual_four_right) + (pa_p_hj32_residual_four_right_product))) /\ ((((exists pa_h_hj32_residual_four_right_product_partial. pa_h_hj32_residual_four_right_product_partial + S (pa_r_hj32_residual_four_right_product) = S ((S (pa_i_hj32_residual_four_right_product)) * pa_v_hj32_residual_four_right_product)) /\ exists pa_q_hj32_residual_four_right_product_partial. pa_u_hj32_residual_four_right_product = pa_q_hj32_residual_four_right_product_partial * S ((S (pa_i_hj32_residual_four_right_product)) * pa_v_hj32_residual_four_right_product) + (pa_r_hj32_residual_four_right_product))) /\ ((((exists pa_h_hj32_residual_four_right_product_successor. pa_h_hj32_residual_four_right_product_successor + S (pa_s_hj32_residual_four_right_product) = S ((S (S pa_i_hj32_residual_four_right_product)) * pa_v_hj32_residual_four_right_product)) /\ exists pa_q_hj32_residual_four_right_product_successor. pa_u_hj32_residual_four_right_product = pa_q_hj32_residual_four_right_product_successor * S ((S (S pa_i_hj32_residual_four_right_product)) * pa_v_hj32_residual_four_right_product) + (pa_s_hj32_residual_four_right_product))) /\ pa_s_hj32_residual_four_right_product = pa_r_hj32_residual_four_right_product * pa_p_hj32_residual_four_right_product)))))))) -> (exists bqb_le_gap_hj32_residual_four_result. bqb_le_gap_hj32_residual_four_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

101 script commands · 27 reading checkpoints · 14 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 (7)
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 rf_seedsL6–8

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. L6
    have rf_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. L7
    apply pow_two_seed_bundle_from_total
  3. L8
    exact htotal
03Separate the logical casesL9–9

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

  1. L9
    cases rf_seeds
04Establish rf_p2_fourL10–13

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

  1. L10
    have rf_p2_four : ∃ hj32_local_value_rf_p2_four. Pow(2,4,hj32_local_value_rf_p2_four)Definitions: Pow(2,4,hj32_local_value_rf_p2_four)Original native command in the exact edition
  2. L11
    specialize htotal 2
  3. L12
    specialize htotal 4
  4. L13
    exact htotal
05Separate the logical casesL14–14

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

  1. L14
    cases rf_p2_four
06Establish rf_p4_twoL15–18

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

  1. L15
    have rf_p4_two : ∃ hj32_local_value_rf_p4_two. Pow(4,2,hj32_local_value_rf_p4_two)Definitions: Pow(4,2,hj32_local_value_rf_p4_two)Original native command in the exact edition
  2. L16
    specialize htotal 4
  3. L17
    specialize htotal 2
  4. L18
    exact htotal
07Separate the logical casesL19–19

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

  1. L19
    cases rf_p4_two
08Establish rf_two_bridgeL20–29

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

  1. L20
    have rf_two_bridge : x2 = x1
  2. L21
    specialize pow_mul_exp_from_total 2
  3. L22
    specialize pow_mul_exp_from_total 2
  4. L23
    specialize pow_mul_exp_from_total 2
  5. L24
    specialize pow_mul_exp_from_total 4
  6. L25
    specialize pow_mul_exp_from_total 4
  7. L26
    specialize pow_mul_exp_from_total x2
  8. L27
    specialize pow_mul_exp_from_total x1
  9. L28
    apply pow_mul_exp_from_total
  10. L29
    exact htotal
09Calculate and transport equalitiesL30–30

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

  1. L30
    norm_num
10Use earlier factsL31–33

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

  1. L31
    exact rf_seeds_left
  2. L32
    exact rf_p4_two_witness
  3. L33
    exact rf_p2_four_witness
11Establish rf_two_boundL34–37

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

  1. L34
    have rf_two_bound : Le(x1,x2)Definitions: Le(x1,x2)Original native command in the exact edition
  2. L35
    rewrite rf_two_bridge
  3. L36
    specialize le_refl x1
  4. L37
    exact le_refl
12Establish rf_p3_fourL38–41

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

  1. L38
    have rf_p3_four : ∃ hj32_local_value_rf_p3_four. Pow(3,4,hj32_local_value_rf_p3_four)Definitions: Pow(3,4,hj32_local_value_rf_p3_four)Original native command in the exact edition
  2. L39
    specialize htotal 3
  3. L40
    specialize htotal 4
  4. L41
    exact htotal
13Separate the logical casesL42–42

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

  1. L42
    cases rf_p3_four
14Establish rf_p4_fourL43–46

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

  1. L43
    have rf_p4_four : ∃ hj32_local_value_rf_p4_four. Pow(4,4,hj32_local_value_rf_p4_four)Definitions: Pow(4,4,hj32_local_value_rf_p4_four)Original native command in the exact edition
  2. L44
    specialize htotal 4
  3. L45
    specialize htotal 4
  4. L46
    exact htotal
15Separate the logical casesL47–47

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

  1. L47
    cases rf_p4_four
16Establish rf_baseL48–48

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

  1. L48
    have rf_base : Lt(2,4)Definitions: Lt(2,4)Original native command in the exact edition
17Construct an explicit witnessL49–49

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

  1. L49
    exists 1
18Calculate and transport equalitiesL50–50

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

  1. L50
    norm_num
19Establish rf_three_boundL51–60

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

  1. L51
    have rf_three_bound : Le(x3,x4)Definitions: Le(x3,x4)Original native command in the exact edition
  2. L52
    specialize pow_base_monotone 3
  3. L53
    specialize pow_base_monotone 4
  4. L54
    specialize pow_base_monotone 4
  5. L55
    specialize pow_base_monotone x3
  6. L56
    specialize pow_base_monotone x4
  7. L57
    apply pow_base_monotone
  8. L58
    exact rf_base
  9. L59
    exact rf_p3_four_witness
  10. L60
    exact rf_p4_four_witness
20Establish rf_six_product_graphL61–61

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

  1. L61
    have rf_six_product_graph : Pow(2 · 3,4,x)Definitions: Pow(2 · 3,4,x)Original native command in the exact edition
21Establish rf_six_product_baseL62–66

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

  1. L62
    have rf_six_product_base : 2 * 3 = 6
  2. L63
    norm_num
  3. L64
    rewrite rf_six_product_base
  4. L65
    rewrite rf_six_product_base
  5. L66
    exact hx
22Establish rf_six_productL67–76

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

  1. L67
    have rf_six_product : x = x1 * x3
  2. L68
    specialize pow_mul_base 2
  3. L69
    specialize pow_mul_base 3
  4. L70
    specialize pow_mul_base 4
  5. L71
    specialize pow_mul_base x1
  6. L72
    specialize pow_mul_base x3
  7. L73
    specialize pow_mul_base x
  8. L74
    apply pow_mul_base
  9. L75
    exact rf_p2_four_witness
  10. L76
    exact rf_p3_four_witness
23Use earlier factsL77–77

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

  1. L77
    exact rf_six_product_graph
24Establish rf_six_powerL78–87

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

  1. L78
    have rf_six_power : y = x2 * x4
  2. L79
    specialize pow_add 4
  3. L80
    specialize pow_add 2
  4. L81
    specialize pow_add 4
  5. L82
    specialize pow_add 6
  6. L83
    specialize pow_add x2
  7. L84
    specialize pow_add x4
  8. L85
    specialize pow_add y
  9. L86
    apply pow_add
  10. L87
    norm_num
25Use earlier factsL88–90

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

  1. L88
    exact rf_p4_two_witness
  2. L89
    exact rf_p4_four_witness
  3. L90
    exact hy
26Establish rf_resultL91–100

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

  1. L91
    have rf_result : Le(x1 · x3,x2 · x4)Definitions: Le(x1 · x3,x2 · x4)Original native command in the exact edition
  2. L92
    specialize mul_le_mul x1
  3. L93
    specialize mul_le_mul x2
  4. L94
    specialize mul_le_mul x3
  5. L95
    specialize mul_le_mul x4
  6. L96
    apply mul_le_mul
  7. L97
    exact rf_two_bound
  8. L98
    exact rf_three_bound
  9. L99
    rewrite <- rf_six_product at rf_result
  10. L100
    rewrite <- rf_six_power at rf_result
27Use earlier factsL101–101

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

  1. L101
    exact rf_result

Library-wide reading audit

Original defined command ledger · 101 lines
  1. 0001intro x
  2. 0002intro y
  3. 0003intro htotal
  4. 0004intro hx
  5. 0005intro hy
  6. 0006have rf_seeds : Pow(2,2,4)Pow(2,7,128)
    Exact native replay linehave rf_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))))))))
  7. 0007apply pow_two_seed_bundle_from_total
  8. 0008exact htotal
  9. 0009cases rf_seeds
  10. 0010have rf_p2_four : ∃ hj32_local_value_rf_p2_four. Pow(2,4,hj32_local_value_rf_p2_four)
    Exact native replay linehave rf_p2_four : exists hj32_local_value_rf_p2_four. (exists pa_b_hj32_local_total_rf_p2_four pa_c_hj32_local_total_rf_p2_four. ((forall pa_i_hj32_local_total_rf_p2_four_repeat. (exists pa_lt_hj32_local_total_rf_p2_four_repeat_bound. pa_lt_hj32_local_total_rf_p2_four_repeat_bound + S pa_i_hj32_local_total_rf_p2_four_repeat = 4) -> (((exists pa_h_hj32_local_total_rf_p2_four_repeat_decoded. pa_h_hj32_local_total_rf_p2_four_repeat_decoded + S (2) = S ((S (pa_i_hj32_local_total_rf_p2_four_repeat)) * pa_c_hj32_local_total_rf_p2_four)) /\ exists pa_q_hj32_local_total_rf_p2_four_repeat_decoded. pa_b_hj32_local_total_rf_p2_four = pa_q_hj32_local_total_rf_p2_four_repeat_decoded * S ((S (pa_i_hj32_local_total_rf_p2_four_repeat)) * pa_c_hj32_local_total_rf_p2_four) + (2)))) /\ (exists pa_u_hj32_local_total_rf_p2_four_product pa_v_hj32_local_total_rf_p2_four_product. ((((exists pa_h_hj32_local_total_rf_p2_four_product_start. pa_h_hj32_local_total_rf_p2_four_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_total_rf_p2_four_product)) /\ exists pa_q_hj32_local_total_rf_p2_four_product_start. pa_u_hj32_local_total_rf_p2_four_product = pa_q_hj32_local_total_rf_p2_four_product_start * S ((S (0)) * pa_v_hj32_local_total_rf_p2_four_product) + (1))) /\ ((((exists pa_h_hj32_local_total_rf_p2_four_product_terminal. pa_h_hj32_local_total_rf_p2_four_product_terminal + S (hj32_local_value_rf_p2_four) = S ((S (4)) * pa_v_hj32_local_total_rf_p2_four_product)) /\ exists pa_q_hj32_local_total_rf_p2_four_product_terminal. pa_u_hj32_local_total_rf_p2_four_product = pa_q_hj32_local_total_rf_p2_four_product_terminal * S ((S (4)) * pa_v_hj32_local_total_rf_p2_four_product) + (hj32_local_value_rf_p2_four))) /\ forall pa_i_hj32_local_total_rf_p2_four_product. (exists pa_lt_hj32_local_total_rf_p2_four_product_bound. pa_lt_hj32_local_total_rf_p2_four_product_bound + S pa_i_hj32_local_total_rf_p2_four_product = 4) -> exists pa_p_hj32_local_total_rf_p2_four_product pa_r_hj32_local_total_rf_p2_four_product pa_s_hj32_local_total_rf_p2_four_product. ((((exists pa_h_hj32_local_total_rf_p2_four_product_factor. pa_h_hj32_local_total_rf_p2_four_product_factor + S (pa_p_hj32_local_total_rf_p2_four_product) = S ((S (pa_i_hj32_local_total_rf_p2_four_product)) * pa_c_hj32_local_total_rf_p2_four)) /\ exists pa_q_hj32_local_total_rf_p2_four_product_factor. pa_b_hj32_local_total_rf_p2_four = pa_q_hj32_local_total_rf_p2_four_product_factor * S ((S (pa_i_hj32_local_total_rf_p2_four_product)) * pa_c_hj32_local_total_rf_p2_four) + (pa_p_hj32_local_total_rf_p2_four_product))) /\ ((((exists pa_h_hj32_local_total_rf_p2_four_product_partial. pa_h_hj32_local_total_rf_p2_four_product_partial + S (pa_r_hj32_local_total_rf_p2_four_product) = S ((S (pa_i_hj32_local_total_rf_p2_four_product)) * pa_v_hj32_local_total_rf_p2_four_product)) /\ exists pa_q_hj32_local_total_rf_p2_four_product_partial. pa_u_hj32_local_total_rf_p2_four_product = pa_q_hj32_local_total_rf_p2_four_product_partial * S ((S (pa_i_hj32_local_total_rf_p2_four_product)) * pa_v_hj32_local_total_rf_p2_four_product) + (pa_r_hj32_local_total_rf_p2_four_product))) /\ ((((exists pa_h_hj32_local_total_rf_p2_four_product_successor. pa_h_hj32_local_total_rf_p2_four_product_successor + S (pa_s_hj32_local_total_rf_p2_four_product) = S ((S (S pa_i_hj32_local_total_rf_p2_four_product)) * pa_v_hj32_local_total_rf_p2_four_product)) /\ exists pa_q_hj32_local_total_rf_p2_four_product_successor. pa_u_hj32_local_total_rf_p2_four_product = pa_q_hj32_local_total_rf_p2_four_product_successor * S ((S (S pa_i_hj32_local_total_rf_p2_four_product)) * pa_v_hj32_local_total_rf_p2_four_product) + (pa_s_hj32_local_total_rf_p2_four_product))) /\ pa_s_hj32_local_total_rf_p2_four_product = pa_r_hj32_local_total_rf_p2_four_product * pa_p_hj32_local_total_rf_p2_four_product))))))))
  11. 0011specialize htotal 2
  12. 0012specialize htotal 4
  13. 0013exact htotal
  14. 0014cases rf_p2_four
  15. 0015have rf_p4_two : ∃ hj32_local_value_rf_p4_two. Pow(4,2,hj32_local_value_rf_p4_two)
    Exact native replay linehave rf_p4_two : exists hj32_local_value_rf_p4_two. (exists pa_b_hj32_local_total_rf_p4_two pa_c_hj32_local_total_rf_p4_two. ((forall pa_i_hj32_local_total_rf_p4_two_repeat. (exists pa_lt_hj32_local_total_rf_p4_two_repeat_bound. pa_lt_hj32_local_total_rf_p4_two_repeat_bound + S pa_i_hj32_local_total_rf_p4_two_repeat = 2) -> (((exists pa_h_hj32_local_total_rf_p4_two_repeat_decoded. pa_h_hj32_local_total_rf_p4_two_repeat_decoded + S (4) = S ((S (pa_i_hj32_local_total_rf_p4_two_repeat)) * pa_c_hj32_local_total_rf_p4_two)) /\ exists pa_q_hj32_local_total_rf_p4_two_repeat_decoded. pa_b_hj32_local_total_rf_p4_two = pa_q_hj32_local_total_rf_p4_two_repeat_decoded * S ((S (pa_i_hj32_local_total_rf_p4_two_repeat)) * pa_c_hj32_local_total_rf_p4_two) + (4)))) /\ (exists pa_u_hj32_local_total_rf_p4_two_product pa_v_hj32_local_total_rf_p4_two_product. ((((exists pa_h_hj32_local_total_rf_p4_two_product_start. pa_h_hj32_local_total_rf_p4_two_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_total_rf_p4_two_product)) /\ exists pa_q_hj32_local_total_rf_p4_two_product_start. pa_u_hj32_local_total_rf_p4_two_product = pa_q_hj32_local_total_rf_p4_two_product_start * S ((S (0)) * pa_v_hj32_local_total_rf_p4_two_product) + (1))) /\ ((((exists pa_h_hj32_local_total_rf_p4_two_product_terminal. pa_h_hj32_local_total_rf_p4_two_product_terminal + S (hj32_local_value_rf_p4_two) = S ((S (2)) * pa_v_hj32_local_total_rf_p4_two_product)) /\ exists pa_q_hj32_local_total_rf_p4_two_product_terminal. pa_u_hj32_local_total_rf_p4_two_product = pa_q_hj32_local_total_rf_p4_two_product_terminal * S ((S (2)) * pa_v_hj32_local_total_rf_p4_two_product) + (hj32_local_value_rf_p4_two))) /\ forall pa_i_hj32_local_total_rf_p4_two_product. (exists pa_lt_hj32_local_total_rf_p4_two_product_bound. pa_lt_hj32_local_total_rf_p4_two_product_bound + S pa_i_hj32_local_total_rf_p4_two_product = 2) -> exists pa_p_hj32_local_total_rf_p4_two_product pa_r_hj32_local_total_rf_p4_two_product pa_s_hj32_local_total_rf_p4_two_product. ((((exists pa_h_hj32_local_total_rf_p4_two_product_factor. pa_h_hj32_local_total_rf_p4_two_product_factor + S (pa_p_hj32_local_total_rf_p4_two_product) = S ((S (pa_i_hj32_local_total_rf_p4_two_product)) * pa_c_hj32_local_total_rf_p4_two)) /\ exists pa_q_hj32_local_total_rf_p4_two_product_factor. pa_b_hj32_local_total_rf_p4_two = pa_q_hj32_local_total_rf_p4_two_product_factor * S ((S (pa_i_hj32_local_total_rf_p4_two_product)) * pa_c_hj32_local_total_rf_p4_two) + (pa_p_hj32_local_total_rf_p4_two_product))) /\ ((((exists pa_h_hj32_local_total_rf_p4_two_product_partial. pa_h_hj32_local_total_rf_p4_two_product_partial + S (pa_r_hj32_local_total_rf_p4_two_product) = S ((S (pa_i_hj32_local_total_rf_p4_two_product)) * pa_v_hj32_local_total_rf_p4_two_product)) /\ exists pa_q_hj32_local_total_rf_p4_two_product_partial. pa_u_hj32_local_total_rf_p4_two_product = pa_q_hj32_local_total_rf_p4_two_product_partial * S ((S (pa_i_hj32_local_total_rf_p4_two_product)) * pa_v_hj32_local_total_rf_p4_two_product) + (pa_r_hj32_local_total_rf_p4_two_product))) /\ ((((exists pa_h_hj32_local_total_rf_p4_two_product_successor. pa_h_hj32_local_total_rf_p4_two_product_successor + S (pa_s_hj32_local_total_rf_p4_two_product) = S ((S (S pa_i_hj32_local_total_rf_p4_two_product)) * pa_v_hj32_local_total_rf_p4_two_product)) /\ exists pa_q_hj32_local_total_rf_p4_two_product_successor. pa_u_hj32_local_total_rf_p4_two_product = pa_q_hj32_local_total_rf_p4_two_product_successor * S ((S (S pa_i_hj32_local_total_rf_p4_two_product)) * pa_v_hj32_local_total_rf_p4_two_product) + (pa_s_hj32_local_total_rf_p4_two_product))) /\ pa_s_hj32_local_total_rf_p4_two_product = pa_r_hj32_local_total_rf_p4_two_product * pa_p_hj32_local_total_rf_p4_two_product))))))))
  16. 0016specialize htotal 4
  17. 0017specialize htotal 2
  18. 0018exact htotal
  19. 0019cases rf_p4_two
  20. 0020have rf_two_bridge : x2 = x1
  21. 0021specialize pow_mul_exp_from_total 2
  22. 0022specialize pow_mul_exp_from_total 2
  23. 0023specialize pow_mul_exp_from_total 2
  24. 0024specialize pow_mul_exp_from_total 4
  25. 0025specialize pow_mul_exp_from_total 4
  26. 0026specialize pow_mul_exp_from_total x2
  27. 0027specialize pow_mul_exp_from_total x1
  28. 0028apply pow_mul_exp_from_total
  29. 0029exact htotal
  30. 0030norm_num
  31. 0031exact rf_seeds_left
  32. 0032exact rf_p4_two_witness
  33. 0033exact rf_p2_four_witness
  34. 0034have rf_two_bound : Le(x1,x2)
    Exact native replay linehave rf_two_bound : exists bqb_le_gap_hj32_rf_two_bound. bqb_le_gap_hj32_rf_two_bound + (x1) = (x2)
  35. 0035rewrite rf_two_bridge
  36. 0036specialize le_refl x1
  37. 0037exact le_refl
  38. 0038have rf_p3_four : ∃ hj32_local_value_rf_p3_four. Pow(3,4,hj32_local_value_rf_p3_four)
    Exact native replay linehave rf_p3_four : exists hj32_local_value_rf_p3_four. (exists pa_b_hj32_local_total_rf_p3_four pa_c_hj32_local_total_rf_p3_four. ((forall pa_i_hj32_local_total_rf_p3_four_repeat. (exists pa_lt_hj32_local_total_rf_p3_four_repeat_bound. pa_lt_hj32_local_total_rf_p3_four_repeat_bound + S pa_i_hj32_local_total_rf_p3_four_repeat = 4) -> (((exists pa_h_hj32_local_total_rf_p3_four_repeat_decoded. pa_h_hj32_local_total_rf_p3_four_repeat_decoded + S (3) = S ((S (pa_i_hj32_local_total_rf_p3_four_repeat)) * pa_c_hj32_local_total_rf_p3_four)) /\ exists pa_q_hj32_local_total_rf_p3_four_repeat_decoded. pa_b_hj32_local_total_rf_p3_four = pa_q_hj32_local_total_rf_p3_four_repeat_decoded * S ((S (pa_i_hj32_local_total_rf_p3_four_repeat)) * pa_c_hj32_local_total_rf_p3_four) + (3)))) /\ (exists pa_u_hj32_local_total_rf_p3_four_product pa_v_hj32_local_total_rf_p3_four_product. ((((exists pa_h_hj32_local_total_rf_p3_four_product_start. pa_h_hj32_local_total_rf_p3_four_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_total_rf_p3_four_product)) /\ exists pa_q_hj32_local_total_rf_p3_four_product_start. pa_u_hj32_local_total_rf_p3_four_product = pa_q_hj32_local_total_rf_p3_four_product_start * S ((S (0)) * pa_v_hj32_local_total_rf_p3_four_product) + (1))) /\ ((((exists pa_h_hj32_local_total_rf_p3_four_product_terminal. pa_h_hj32_local_total_rf_p3_four_product_terminal + S (hj32_local_value_rf_p3_four) = S ((S (4)) * pa_v_hj32_local_total_rf_p3_four_product)) /\ exists pa_q_hj32_local_total_rf_p3_four_product_terminal. pa_u_hj32_local_total_rf_p3_four_product = pa_q_hj32_local_total_rf_p3_four_product_terminal * S ((S (4)) * pa_v_hj32_local_total_rf_p3_four_product) + (hj32_local_value_rf_p3_four))) /\ forall pa_i_hj32_local_total_rf_p3_four_product. (exists pa_lt_hj32_local_total_rf_p3_four_product_bound. pa_lt_hj32_local_total_rf_p3_four_product_bound + S pa_i_hj32_local_total_rf_p3_four_product = 4) -> exists pa_p_hj32_local_total_rf_p3_four_product pa_r_hj32_local_total_rf_p3_four_product pa_s_hj32_local_total_rf_p3_four_product. ((((exists pa_h_hj32_local_total_rf_p3_four_product_factor. pa_h_hj32_local_total_rf_p3_four_product_factor + S (pa_p_hj32_local_total_rf_p3_four_product) = S ((S (pa_i_hj32_local_total_rf_p3_four_product)) * pa_c_hj32_local_total_rf_p3_four)) /\ exists pa_q_hj32_local_total_rf_p3_four_product_factor. pa_b_hj32_local_total_rf_p3_four = pa_q_hj32_local_total_rf_p3_four_product_factor * S ((S (pa_i_hj32_local_total_rf_p3_four_product)) * pa_c_hj32_local_total_rf_p3_four) + (pa_p_hj32_local_total_rf_p3_four_product))) /\ ((((exists pa_h_hj32_local_total_rf_p3_four_product_partial. pa_h_hj32_local_total_rf_p3_four_product_partial + S (pa_r_hj32_local_total_rf_p3_four_product) = S ((S (pa_i_hj32_local_total_rf_p3_four_product)) * pa_v_hj32_local_total_rf_p3_four_product)) /\ exists pa_q_hj32_local_total_rf_p3_four_product_partial. pa_u_hj32_local_total_rf_p3_four_product = pa_q_hj32_local_total_rf_p3_four_product_partial * S ((S (pa_i_hj32_local_total_rf_p3_four_product)) * pa_v_hj32_local_total_rf_p3_four_product) + (pa_r_hj32_local_total_rf_p3_four_product))) /\ ((((exists pa_h_hj32_local_total_rf_p3_four_product_successor. pa_h_hj32_local_total_rf_p3_four_product_successor + S (pa_s_hj32_local_total_rf_p3_four_product) = S ((S (S pa_i_hj32_local_total_rf_p3_four_product)) * pa_v_hj32_local_total_rf_p3_four_product)) /\ exists pa_q_hj32_local_total_rf_p3_four_product_successor. pa_u_hj32_local_total_rf_p3_four_product = pa_q_hj32_local_total_rf_p3_four_product_successor * S ((S (S pa_i_hj32_local_total_rf_p3_four_product)) * pa_v_hj32_local_total_rf_p3_four_product) + (pa_s_hj32_local_total_rf_p3_four_product))) /\ pa_s_hj32_local_total_rf_p3_four_product = pa_r_hj32_local_total_rf_p3_four_product * pa_p_hj32_local_total_rf_p3_four_product))))))))
  39. 0039specialize htotal 3
  40. 0040specialize htotal 4
  41. 0041exact htotal
  42. 0042cases rf_p3_four
  43. 0043have rf_p4_four : ∃ hj32_local_value_rf_p4_four. Pow(4,4,hj32_local_value_rf_p4_four)
    Exact native replay linehave rf_p4_four : exists hj32_local_value_rf_p4_four. (exists pa_b_hj32_local_total_rf_p4_four pa_c_hj32_local_total_rf_p4_four. ((forall pa_i_hj32_local_total_rf_p4_four_repeat. (exists pa_lt_hj32_local_total_rf_p4_four_repeat_bound. pa_lt_hj32_local_total_rf_p4_four_repeat_bound + S pa_i_hj32_local_total_rf_p4_four_repeat = 4) -> (((exists pa_h_hj32_local_total_rf_p4_four_repeat_decoded. pa_h_hj32_local_total_rf_p4_four_repeat_decoded + S (4) = S ((S (pa_i_hj32_local_total_rf_p4_four_repeat)) * pa_c_hj32_local_total_rf_p4_four)) /\ exists pa_q_hj32_local_total_rf_p4_four_repeat_decoded. pa_b_hj32_local_total_rf_p4_four = pa_q_hj32_local_total_rf_p4_four_repeat_decoded * S ((S (pa_i_hj32_local_total_rf_p4_four_repeat)) * pa_c_hj32_local_total_rf_p4_four) + (4)))) /\ (exists pa_u_hj32_local_total_rf_p4_four_product pa_v_hj32_local_total_rf_p4_four_product. ((((exists pa_h_hj32_local_total_rf_p4_four_product_start. pa_h_hj32_local_total_rf_p4_four_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_total_rf_p4_four_product)) /\ exists pa_q_hj32_local_total_rf_p4_four_product_start. pa_u_hj32_local_total_rf_p4_four_product = pa_q_hj32_local_total_rf_p4_four_product_start * S ((S (0)) * pa_v_hj32_local_total_rf_p4_four_product) + (1))) /\ ((((exists pa_h_hj32_local_total_rf_p4_four_product_terminal. pa_h_hj32_local_total_rf_p4_four_product_terminal + S (hj32_local_value_rf_p4_four) = S ((S (4)) * pa_v_hj32_local_total_rf_p4_four_product)) /\ exists pa_q_hj32_local_total_rf_p4_four_product_terminal. pa_u_hj32_local_total_rf_p4_four_product = pa_q_hj32_local_total_rf_p4_four_product_terminal * S ((S (4)) * pa_v_hj32_local_total_rf_p4_four_product) + (hj32_local_value_rf_p4_four))) /\ forall pa_i_hj32_local_total_rf_p4_four_product. (exists pa_lt_hj32_local_total_rf_p4_four_product_bound. pa_lt_hj32_local_total_rf_p4_four_product_bound + S pa_i_hj32_local_total_rf_p4_four_product = 4) -> exists pa_p_hj32_local_total_rf_p4_four_product pa_r_hj32_local_total_rf_p4_four_product pa_s_hj32_local_total_rf_p4_four_product. ((((exists pa_h_hj32_local_total_rf_p4_four_product_factor. pa_h_hj32_local_total_rf_p4_four_product_factor + S (pa_p_hj32_local_total_rf_p4_four_product) = S ((S (pa_i_hj32_local_total_rf_p4_four_product)) * pa_c_hj32_local_total_rf_p4_four)) /\ exists pa_q_hj32_local_total_rf_p4_four_product_factor. pa_b_hj32_local_total_rf_p4_four = pa_q_hj32_local_total_rf_p4_four_product_factor * S ((S (pa_i_hj32_local_total_rf_p4_four_product)) * pa_c_hj32_local_total_rf_p4_four) + (pa_p_hj32_local_total_rf_p4_four_product))) /\ ((((exists pa_h_hj32_local_total_rf_p4_four_product_partial. pa_h_hj32_local_total_rf_p4_four_product_partial + S (pa_r_hj32_local_total_rf_p4_four_product) = S ((S (pa_i_hj32_local_total_rf_p4_four_product)) * pa_v_hj32_local_total_rf_p4_four_product)) /\ exists pa_q_hj32_local_total_rf_p4_four_product_partial. pa_u_hj32_local_total_rf_p4_four_product = pa_q_hj32_local_total_rf_p4_four_product_partial * S ((S (pa_i_hj32_local_total_rf_p4_four_product)) * pa_v_hj32_local_total_rf_p4_four_product) + (pa_r_hj32_local_total_rf_p4_four_product))) /\ ((((exists pa_h_hj32_local_total_rf_p4_four_product_successor. pa_h_hj32_local_total_rf_p4_four_product_successor + S (pa_s_hj32_local_total_rf_p4_four_product) = S ((S (S pa_i_hj32_local_total_rf_p4_four_product)) * pa_v_hj32_local_total_rf_p4_four_product)) /\ exists pa_q_hj32_local_total_rf_p4_four_product_successor. pa_u_hj32_local_total_rf_p4_four_product = pa_q_hj32_local_total_rf_p4_four_product_successor * S ((S (S pa_i_hj32_local_total_rf_p4_four_product)) * pa_v_hj32_local_total_rf_p4_four_product) + (pa_s_hj32_local_total_rf_p4_four_product))) /\ pa_s_hj32_local_total_rf_p4_four_product = pa_r_hj32_local_total_rf_p4_four_product * pa_p_hj32_local_total_rf_p4_four_product))))))))
  44. 0044specialize htotal 4
  45. 0045specialize htotal 4
  46. 0046exact htotal
  47. 0047cases rf_p4_four
  48. 0048have rf_base : Lt(2,4)
    Exact native replay linehave rf_base : exists bqb_le_gap_hj32_rf_base. bqb_le_gap_hj32_rf_base + (3) = (4)
  49. 0049exists 1
  50. 0050norm_num
  51. 0051have rf_three_bound : Le(x3,x4)
    Exact native replay linehave rf_three_bound : exists bqb_le_gap_hj32_local_base_bound_rf_three_bound. bqb_le_gap_hj32_local_base_bound_rf_three_bound + (x3) = (x4)
  52. 0052specialize pow_base_monotone 3
  53. 0053specialize pow_base_monotone 4
  54. 0054specialize pow_base_monotone 4
  55. 0055specialize pow_base_monotone x3
  56. 0056specialize pow_base_monotone x4
  57. 0057apply pow_base_monotone
  58. 0058exact rf_base
  59. 0059exact rf_p3_four_witness
  60. 0060exact rf_p4_four_witness
  61. 0061have rf_six_product_graph : Pow(2 · 3,4,x)
    Exact native replay linehave rf_six_product_graph : exists pa_b_hj32_local_product_rf_six_product pa_c_hj32_local_product_rf_six_product. ((forall pa_i_hj32_local_product_rf_six_product_repeat. (exists pa_lt_hj32_local_product_rf_six_product_repeat_bound. pa_lt_hj32_local_product_rf_six_product_repeat_bound + S pa_i_hj32_local_product_rf_six_product_repeat = 4) -> (((exists pa_h_hj32_local_product_rf_six_product_repeat_decoded. pa_h_hj32_local_product_rf_six_product_repeat_decoded + S (2 * 3) = S ((S (pa_i_hj32_local_product_rf_six_product_repeat)) * pa_c_hj32_local_product_rf_six_product)) /\ exists pa_q_hj32_local_product_rf_six_product_repeat_decoded. pa_b_hj32_local_product_rf_six_product = pa_q_hj32_local_product_rf_six_product_repeat_decoded * S ((S (pa_i_hj32_local_product_rf_six_product_repeat)) * pa_c_hj32_local_product_rf_six_product) + (2 * 3)))) /\ (exists pa_u_hj32_local_product_rf_six_product_product pa_v_hj32_local_product_rf_six_product_product. ((((exists pa_h_hj32_local_product_rf_six_product_product_start. pa_h_hj32_local_product_rf_six_product_product_start + S (1) = S ((S (0)) * pa_v_hj32_local_product_rf_six_product_product)) /\ exists pa_q_hj32_local_product_rf_six_product_product_start. pa_u_hj32_local_product_rf_six_product_product = pa_q_hj32_local_product_rf_six_product_product_start * S ((S (0)) * pa_v_hj32_local_product_rf_six_product_product) + (1))) /\ ((((exists pa_h_hj32_local_product_rf_six_product_product_terminal. pa_h_hj32_local_product_rf_six_product_product_terminal + S (x) = S ((S (4)) * pa_v_hj32_local_product_rf_six_product_product)) /\ exists pa_q_hj32_local_product_rf_six_product_product_terminal. pa_u_hj32_local_product_rf_six_product_product = pa_q_hj32_local_product_rf_six_product_product_terminal * S ((S (4)) * pa_v_hj32_local_product_rf_six_product_product) + (x))) /\ forall pa_i_hj32_local_product_rf_six_product_product. (exists pa_lt_hj32_local_product_rf_six_product_product_bound. pa_lt_hj32_local_product_rf_six_product_product_bound + S pa_i_hj32_local_product_rf_six_product_product = 4) -> exists pa_p_hj32_local_product_rf_six_product_product pa_r_hj32_local_product_rf_six_product_product pa_s_hj32_local_product_rf_six_product_product. ((((exists pa_h_hj32_local_product_rf_six_product_product_factor. pa_h_hj32_local_product_rf_six_product_product_factor + S (pa_p_hj32_local_product_rf_six_product_product) = S ((S (pa_i_hj32_local_product_rf_six_product_product)) * pa_c_hj32_local_product_rf_six_product)) /\ exists pa_q_hj32_local_product_rf_six_product_product_factor. pa_b_hj32_local_product_rf_six_product = pa_q_hj32_local_product_rf_six_product_product_factor * S ((S (pa_i_hj32_local_product_rf_six_product_product)) * pa_c_hj32_local_product_rf_six_product) + (pa_p_hj32_local_product_rf_six_product_product))) /\ ((((exists pa_h_hj32_local_product_rf_six_product_product_partial. pa_h_hj32_local_product_rf_six_product_product_partial + S (pa_r_hj32_local_product_rf_six_product_product) = S ((S (pa_i_hj32_local_product_rf_six_product_product)) * pa_v_hj32_local_product_rf_six_product_product)) /\ exists pa_q_hj32_local_product_rf_six_product_product_partial. pa_u_hj32_local_product_rf_six_product_product = pa_q_hj32_local_product_rf_six_product_product_partial * S ((S (pa_i_hj32_local_product_rf_six_product_product)) * pa_v_hj32_local_product_rf_six_product_product) + (pa_r_hj32_local_product_rf_six_product_product))) /\ ((((exists pa_h_hj32_local_product_rf_six_product_product_successor. pa_h_hj32_local_product_rf_six_product_product_successor + S (pa_s_hj32_local_product_rf_six_product_product) = S ((S (S pa_i_hj32_local_product_rf_six_product_product)) * pa_v_hj32_local_product_rf_six_product_product)) /\ exists pa_q_hj32_local_product_rf_six_product_product_successor. pa_u_hj32_local_product_rf_six_product_product = pa_q_hj32_local_product_rf_six_product_product_successor * S ((S (S pa_i_hj32_local_product_rf_six_product_product)) * pa_v_hj32_local_product_rf_six_product_product) + (pa_s_hj32_local_product_rf_six_product_product))) /\ pa_s_hj32_local_product_rf_six_product_product = pa_r_hj32_local_product_rf_six_product_product * pa_p_hj32_local_product_rf_six_product_product)))))))
  62. 0062have rf_six_product_base : 2 * 3 = 6
  63. 0063norm_num
  64. 0064rewrite rf_six_product_base
  65. 0065rewrite rf_six_product_base
  66. 0066exact hx
  67. 0067have rf_six_product : x = x1 * x3
  68. 0068specialize pow_mul_base 2
  69. 0069specialize pow_mul_base 3
  70. 0070specialize pow_mul_base 4
  71. 0071specialize pow_mul_base x1
  72. 0072specialize pow_mul_base x3
  73. 0073specialize pow_mul_base x
  74. 0074apply pow_mul_base
  75. 0075exact rf_p2_four_witness
  76. 0076exact rf_p3_four_witness
  77. 0077exact rf_six_product_graph
  78. 0078have rf_six_power : y = x2 * x4
  79. 0079specialize pow_add 4
  80. 0080specialize pow_add 2
  81. 0081specialize pow_add 4
  82. 0082specialize pow_add 6
  83. 0083specialize pow_add x2
  84. 0084specialize pow_add x4
  85. 0085specialize pow_add y
  86. 0086apply pow_add
  87. 0087norm_num
  88. 0088exact rf_p4_two_witness
  89. 0089exact rf_p4_four_witness
  90. 0090exact hy
  91. 0091have rf_result : Le(x1 · x3,x2 · x4)
    Exact native replay linehave rf_result : exists bqb_le_gap_hj32_local_product_bound_rf_result. bqb_le_gap_hj32_local_product_bound_rf_result + (x1 * x3) = (x2 * x4)
  92. 0092specialize mul_le_mul x1
  93. 0093specialize mul_le_mul x2
  94. 0094specialize mul_le_mul x3
  95. 0095specialize mul_le_mul x4
  96. 0096apply mul_le_mul
  97. 0097exact rf_two_bound
  98. 0098exact rf_three_bound
  99. 0099rewrite <- rf_six_product at rf_result
  100. 0100rewrite <- rf_six_power at rf_result
  101. 0101exact rf_result