Exact expanded PA statement
forall k x y. (forall bpt_a_hj32_two_double bpt_e_hj32_two_double. exists bpt_x_hj32_two_double. (exists ff_b_bpt_value_hj32_two_double ff_c_bpt_value_hj32_two_double. ((forall ff_i_bpt_value_hj32_two_double_repeat. (exists ff_lt_bpt_value_hj32_two_double_repeat_bound. ff_lt_bpt_value_hj32_two_double_repeat_bound + S ff_i_bpt_value_hj32_two_double_repeat = bpt_e_hj32_two_double) -> (((exists ff_h_bpt_value_hj32_two_double_repeat_decoded. ff_h_bpt_value_hj32_two_double_repeat_decoded + S (bpt_a_hj32_two_double) = S ((S (ff_i_bpt_value_hj32_two_double_repeat)) * ff_c_bpt_value_hj32_two_double)) /\ exists ff_q_bpt_value_hj32_two_double_repeat_decoded. ff_b_bpt_value_hj32_two_double = ff_q_bpt_value_hj32_two_double_repeat_decoded * S ((S (ff_i_bpt_value_hj32_two_double_repeat)) * ff_c_bpt_value_hj32_two_double) + (bpt_a_hj32_two_double)))) /\ (exists ff_u_bpt_value_hj32_two_double_product ff_v_bpt_value_hj32_two_double_product. ((((exists ff_h_bpt_value_hj32_two_double_product_start. ff_h_bpt_value_hj32_two_double_product_start + S (1) = S ((S (0)) * ff_v_bpt_value_hj32_two_double_product)) /\ exists ff_q_bpt_value_hj32_two_double_product_start. ff_u_bpt_value_hj32_two_double_product = ff_q_bpt_value_hj32_two_double_product_start * S ((S (0)) * ff_v_bpt_value_hj32_two_double_product) + (1))) /\ ((((exists ff_h_bpt_value_hj32_two_double_product_terminal. ff_h_bpt_value_hj32_two_double_product_terminal + S (bpt_x_hj32_two_double) = S ((S (bpt_e_hj32_two_double)) * ff_v_bpt_value_hj32_two_double_product)) /\ exists ff_q_bpt_value_hj32_two_double_product_terminal. ff_u_bpt_value_hj32_two_double_product = ff_q_bpt_value_hj32_two_double_product_terminal * S ((S (bpt_e_hj32_two_double)) * ff_v_bpt_value_hj32_two_double_product) + (bpt_x_hj32_two_double))) /\ forall ff_i_bpt_value_hj32_two_double_product. (exists ff_lt_bpt_value_hj32_two_double_product_bound. ff_lt_bpt_value_hj32_two_double_product_bound + S ff_i_bpt_value_hj32_two_double_product = bpt_e_hj32_two_double) -> exists ff_p_bpt_value_hj32_two_double_product ff_r_bpt_value_hj32_two_double_product ff_s_bpt_value_hj32_two_double_product. ((((exists ff_h_bpt_value_hj32_two_double_product_factor. ff_h_bpt_value_hj32_two_double_product_factor + S (ff_p_bpt_value_hj32_two_double_product) = S ((S (ff_i_bpt_value_hj32_two_double_product)) * ff_c_bpt_value_hj32_two_double)) /\ exists ff_q_bpt_value_hj32_two_double_product_factor. ff_b_bpt_value_hj32_two_double = ff_q_bpt_value_hj32_two_double_product_factor * S ((S (ff_i_bpt_value_hj32_two_double_product)) * ff_c_bpt_value_hj32_two_double) + (ff_p_bpt_value_hj32_two_double_product))) /\ ((((exists ff_h_bpt_value_hj32_two_double_product_partial. ff_h_bpt_value_hj32_two_double_product_partial + S (ff_r_bpt_value_hj32_two_double_product) = S ((S (ff_i_bpt_value_hj32_two_double_product)) * ff_v_bpt_value_hj32_two_double_product)) /\ exists ff_q_bpt_value_hj32_two_double_product_partial. ff_u_bpt_value_hj32_two_double_product = ff_q_bpt_value_hj32_two_double_product_partial * S ((S (ff_i_bpt_value_hj32_two_double_product)) * ff_v_bpt_value_hj32_two_double_product) + (ff_r_bpt_value_hj32_two_double_product))) /\ ((((exists ff_h_bpt_value_hj32_two_double_product_successor. ff_h_bpt_value_hj32_two_double_product_successor + S (ff_s_bpt_value_hj32_two_double_product) = S ((S (S ff_i_bpt_value_hj32_two_double_product)) * ff_v_bpt_value_hj32_two_double_product)) /\ exists ff_q_bpt_value_hj32_two_double_product_successor. ff_u_bpt_value_hj32_two_double_product = ff_q_bpt_value_hj32_two_double_product_successor * S ((S (S ff_i_bpt_value_hj32_two_double_product)) * ff_v_bpt_value_hj32_two_double_product) + (ff_s_bpt_value_hj32_two_double_product))) /\ ff_s_bpt_value_hj32_two_double_product = ff_r_bpt_value_hj32_two_double_product * ff_p_bpt_value_hj32_two_double_product))))))))) -> (exists pa_b_hj32_two_double_left pa_c_hj32_two_double_left. ((forall pa_i_hj32_two_double_left_repeat. (exists pa_lt_hj32_two_double_left_repeat_bound. pa_lt_hj32_two_double_left_repeat_bound + S pa_i_hj32_two_double_left_repeat = 2 * k) -> (((exists pa_h_hj32_two_double_left_repeat_decoded. pa_h_hj32_two_double_left_repeat_decoded + S (2) = S ((S (pa_i_hj32_two_double_left_repeat)) * pa_c_hj32_two_double_left)) /\ exists pa_q_hj32_two_double_left_repeat_decoded. pa_b_hj32_two_double_left = pa_q_hj32_two_double_left_repeat_decoded * S ((S (pa_i_hj32_two_double_left_repeat)) * pa_c_hj32_two_double_left) + (2)))) /\ (exists pa_u_hj32_two_double_left_product pa_v_hj32_two_double_left_product. ((((exists pa_h_hj32_two_double_left_product_start. pa_h_hj32_two_double_left_product_start + S (1) = S ((S (0)) * pa_v_hj32_two_double_left_product)) /\ exists pa_q_hj32_two_double_left_product_start. pa_u_hj32_two_double_left_product = pa_q_hj32_two_double_left_product_start * S ((S (0)) * pa_v_hj32_two_double_left_product) + (1))) /\ ((((exists pa_h_hj32_two_double_left_product_terminal. pa_h_hj32_two_double_left_product_terminal + S (x) = S ((S (2 * k)) * pa_v_hj32_two_double_left_product)) /\ exists pa_q_hj32_two_double_left_product_terminal. pa_u_hj32_two_double_left_product = pa_q_hj32_two_double_left_product_terminal * S ((S (2 * k)) * pa_v_hj32_two_double_left_product) + (x))) /\ forall pa_i_hj32_two_double_left_product. (exists pa_lt_hj32_two_double_left_product_bound. pa_lt_hj32_two_double_left_product_bound + S pa_i_hj32_two_double_left_product = 2 * k) -> exists pa_p_hj32_two_double_left_product pa_r_hj32_two_double_left_product pa_s_hj32_two_double_left_product. ((((exists pa_h_hj32_two_double_left_product_factor. pa_h_hj32_two_double_left_product_factor + S (pa_p_hj32_two_double_left_product) = S ((S (pa_i_hj32_two_double_left_product)) * pa_c_hj32_two_double_left)) /\ exists pa_q_hj32_two_double_left_product_factor. pa_b_hj32_two_double_left = pa_q_hj32_two_double_left_product_factor * S ((S (pa_i_hj32_two_double_left_product)) * pa_c_hj32_two_double_left) + (pa_p_hj32_two_double_left_product))) /\ ((((exists pa_h_hj32_two_double_left_product_partial. pa_h_hj32_two_double_left_product_partial + S (pa_r_hj32_two_double_left_product) = S ((S (pa_i_hj32_two_double_left_product)) * pa_v_hj32_two_double_left_product)) /\ exists pa_q_hj32_two_double_left_product_partial. pa_u_hj32_two_double_left_product = pa_q_hj32_two_double_left_product_partial * S ((S (pa_i_hj32_two_double_left_product)) * pa_v_hj32_two_double_left_product) + (pa_r_hj32_two_double_left_product))) /\ ((((exists pa_h_hj32_two_double_left_product_successor. pa_h_hj32_two_double_left_product_successor + S (pa_s_hj32_two_double_left_product) = S ((S (S pa_i_hj32_two_double_left_product)) * pa_v_hj32_two_double_left_product)) /\ exists pa_q_hj32_two_double_left_product_successor. pa_u_hj32_two_double_left_product = pa_q_hj32_two_double_left_product_successor * S ((S (S pa_i_hj32_two_double_left_product)) * pa_v_hj32_two_double_left_product) + (pa_s_hj32_two_double_left_product))) /\ pa_s_hj32_two_double_left_product = pa_r_hj32_two_double_left_product * pa_p_hj32_two_double_left_product)))))))) -> (exists pa_b_hj32_two_double_right pa_c_hj32_two_double_right. ((forall pa_i_hj32_two_double_right_repeat. (exists pa_lt_hj32_two_double_right_repeat_bound. pa_lt_hj32_two_double_right_repeat_bound + S pa_i_hj32_two_double_right_repeat = k) -> (((exists pa_h_hj32_two_double_right_repeat_decoded. pa_h_hj32_two_double_right_repeat_decoded + S (4) = S ((S (pa_i_hj32_two_double_right_repeat)) * pa_c_hj32_two_double_right)) /\ exists pa_q_hj32_two_double_right_repeat_decoded. pa_b_hj32_two_double_right = pa_q_hj32_two_double_right_repeat_decoded * S ((S (pa_i_hj32_two_double_right_repeat)) * pa_c_hj32_two_double_right) + (4)))) /\ (exists pa_u_hj32_two_double_right_product pa_v_hj32_two_double_right_product. ((((exists pa_h_hj32_two_double_right_product_start. pa_h_hj32_two_double_right_product_start + S (1) = S ((S (0)) * pa_v_hj32_two_double_right_product)) /\ exists pa_q_hj32_two_double_right_product_start. pa_u_hj32_two_double_right_product = pa_q_hj32_two_double_right_product_start * S ((S (0)) * pa_v_hj32_two_double_right_product) + (1))) /\ ((((exists pa_h_hj32_two_double_right_product_terminal. pa_h_hj32_two_double_right_product_terminal + S (y) = S ((S (k)) * pa_v_hj32_two_double_right_product)) /\ exists pa_q_hj32_two_double_right_product_terminal. pa_u_hj32_two_double_right_product = pa_q_hj32_two_double_right_product_terminal * S ((S (k)) * pa_v_hj32_two_double_right_product) + (y))) /\ forall pa_i_hj32_two_double_right_product. (exists pa_lt_hj32_two_double_right_product_bound. pa_lt_hj32_two_double_right_product_bound + S pa_i_hj32_two_double_right_product = k) -> exists pa_p_hj32_two_double_right_product pa_r_hj32_two_double_right_product pa_s_hj32_two_double_right_product. ((((exists pa_h_hj32_two_double_right_product_factor. pa_h_hj32_two_double_right_product_factor + S (pa_p_hj32_two_double_right_product) = S ((S (pa_i_hj32_two_double_right_product)) * pa_c_hj32_two_double_right)) /\ exists pa_q_hj32_two_double_right_product_factor. pa_b_hj32_two_double_right = pa_q_hj32_two_double_right_product_factor * S ((S (pa_i_hj32_two_double_right_product)) * pa_c_hj32_two_double_right) + (pa_p_hj32_two_double_right_product))) /\ ((((exists pa_h_hj32_two_double_right_product_partial. pa_h_hj32_two_double_right_product_partial + S (pa_r_hj32_two_double_right_product) = S ((S (pa_i_hj32_two_double_right_product)) * pa_v_hj32_two_double_right_product)) /\ exists pa_q_hj32_two_double_right_product_partial. pa_u_hj32_two_double_right_product = pa_q_hj32_two_double_right_product_partial * S ((S (pa_i_hj32_two_double_right_product)) * pa_v_hj32_two_double_right_product) + (pa_r_hj32_two_double_right_product))) /\ ((((exists pa_h_hj32_two_double_right_product_successor. pa_h_hj32_two_double_right_product_successor + S (pa_s_hj32_two_double_right_product) = S ((S (S pa_i_hj32_two_double_right_product)) * pa_v_hj32_two_double_right_product)) /\ exists pa_q_hj32_two_double_right_product_successor. pa_u_hj32_two_double_right_product = pa_q_hj32_two_double_right_product_successor * S ((S (S pa_i_hj32_two_double_right_product)) * pa_v_hj32_two_double_right_product) + (pa_s_hj32_two_double_right_product))) /\ pa_s_hj32_two_double_right_product = pa_r_hj32_two_double_right_product * pa_p_hj32_two_double_right_product)))))))) -> x = yStructural proof guide
An even power of two is the matching power of four.
Direct prerequisites: pow_two_seed_bundle_from_total, pow_mul_exp_from_total. The authored body proceeds by case analysis (1), intermediate claims (2).
Proof neighborhood
Direct dependencies
Direct dependents
Formal native tactic body
Dependencies are hypotheses of this body receipt. The focused endpoint audits separately check the complete empty-context certificates.
- 0001
intro k - 0002
intro x - 0003
intro y - 0004
intro htotal - 0005
intro hx - 0006
intro hy - 0007
have td_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)))))))) - 0008
apply pow_two_seed_bundle_from_total - 0009
exact htotal - 0010
cases td_seeds - 0011
have td_bridge : y = x - 0012
specialize pow_mul_exp_from_total 2 - 0013
specialize pow_mul_exp_from_total 2 - 0014
specialize pow_mul_exp_from_total k - 0015
specialize pow_mul_exp_from_total (2 * k) - 0016
specialize pow_mul_exp_from_total 4 - 0017
specialize pow_mul_exp_from_total y - 0018
specialize pow_mul_exp_from_total x - 0019
apply pow_mul_exp_from_total - 0020
exact htotal - 0021
refl - 0022
exact td_seeds_left - 0023
exact hy - 0024
exact hx - 0025
symm - 0026
exact td_bridge