Exact expanded PA statement
forall p a n u v b c m. p = S n -> ((~(p = 1) /\ forall esi_prime_left_iteration_prime esi_prime_right_iteration_prime. p = esi_prime_left_iteration_prime * esi_prime_right_iteration_prime -> esi_prime_left_iteration_prime = 1 \/ esi_prime_right_iteration_prime = 1)) -> ~(exists qr_x_iteration_nonresidue. exists qr_u_iteration_nonresidue qr_v_iteration_nonresidue. qr_x_iteration_nonresidue * qr_x_iteration_nonresidue + p * qr_u_iteration_nonresidue = a + p * qr_v_iteration_nonresidue) -> (forall esip_index_iteration_prefix. (exists esip_gap_iteration_prefix_prefix_bound. esip_gap_iteration_prefix_prefix_bound + S (esip_index_iteration_prefix) = n) -> exists esip_mate_iteration_prefix. ((((exists ff_h_esip_iteration_prefix_entry. ff_h_esip_iteration_prefix_entry + S (esip_mate_iteration_prefix) = S ((S (esip_index_iteration_prefix)) * v)) /\ exists ff_q_esip_iteration_prefix_entry. u = ff_q_esip_iteration_prefix_entry * S ((S (esip_index_iteration_prefix)) * v) + (esip_mate_iteration_prefix))) /\ ((exists esip_gap_iteration_prefix_relation_index_bound. esip_gap_iteration_prefix_relation_index_bound + S (esip_index_iteration_prefix) = n) /\ ((((~((S esip_index_iteration_prefix) = 0) /\ (exists esip_gap_iteration_prefix_relation_scaled_left_bound. esip_gap_iteration_prefix_relation_scaled_left_bound + S (S esip_index_iteration_prefix) = p))) /\ (((~(esip_mate_iteration_prefix = 0) /\ (exists esip_gap_iteration_prefix_relation_scaled_right_bound. esip_gap_iteration_prefix_relation_scaled_right_bound + S (esip_mate_iteration_prefix) = p))) /\ (exists esi_mod_left_iteration_prefix_relation_scaled_mod esi_mod_right_iteration_prefix_relation_scaled_mod. ((S esip_index_iteration_prefix) * esip_mate_iteration_prefix) + p * esi_mod_left_iteration_prefix_relation_scaled_mod = (a) + p * esi_mod_right_iteration_prefix_relation_scaled_mod))))))) -> (exists wpo_gap_iteration_short. wpo_gap_iteration_short + S (m + m) = n) -> (((forall espo_position_step_old_state_closed espo_source_step_old_state_closed espo_mate_step_old_state_closed. (exists wpo_gap_step_old_state_closed_position_bound. wpo_gap_step_old_state_closed_position_bound + S (espo_position_step_old_state_closed) = m + m) -> (((exists wpo_beta_height_step_old_state_closed_source_entry. wpo_beta_height_step_old_state_closed_source_entry + S (espo_source_step_old_state_closed) = S ((S (espo_position_step_old_state_closed)) * c)) /\ exists wpo_beta_quotient_step_old_state_closed_source_entry. b = wpo_beta_quotient_step_old_state_closed_source_entry * S ((S (espo_position_step_old_state_closed)) * c) + (espo_source_step_old_state_closed))) -> (((exists wpo_beta_height_step_old_state_closed_scaled_entry. wpo_beta_height_step_old_state_closed_scaled_entry + S (S espo_mate_step_old_state_closed) = S ((S (espo_source_step_old_state_closed)) * v)) /\ exists wpo_beta_quotient_step_old_state_closed_scaled_entry. u = wpo_beta_quotient_step_old_state_closed_scaled_entry * S ((S (espo_source_step_old_state_closed)) * v) + (S espo_mate_step_old_state_closed))) -> exists espo_mate_position_step_old_state_closed. ((exists wpo_gap_step_old_state_closed_mate_bound. wpo_gap_step_old_state_closed_mate_bound + S (espo_mate_position_step_old_state_closed) = m + m) /\ (((exists wpo_beta_height_step_old_state_closed_mate_entry. wpo_beta_height_step_old_state_closed_mate_entry + S (espo_mate_step_old_state_closed) = S ((S (espo_mate_position_step_old_state_closed)) * c)) /\ exists wpo_beta_quotient_step_old_state_closed_mate_entry. b = wpo_beta_quotient_step_old_state_closed_mate_entry * S ((S (espo_mate_position_step_old_state_closed)) * c) + (espo_mate_step_old_state_closed))))) /\ (((forall fom_index_step_old_state_bounded. (exists fom_gap_step_old_state_bounded_index_bound. fom_gap_step_old_state_bounded_index_bound + S (fom_index_step_old_state_bounded) = m + m) -> exists fom_value_step_old_state_bounded. ((((exists fom_beta_height_step_old_state_bounded_entry. fom_beta_height_step_old_state_bounded_entry + S (fom_value_step_old_state_bounded) = S ((S (fom_index_step_old_state_bounded)) * c)) /\ exists fom_beta_quotient_step_old_state_bounded_entry. b = fom_beta_quotient_step_old_state_bounded_entry * S ((S (fom_index_step_old_state_bounded)) * c) + (fom_value_step_old_state_bounded))) /\ (exists fom_gap_step_old_state_bounded_value_bound. fom_gap_step_old_state_bounded_value_bound + S (fom_value_step_old_state_bounded) = n))) /\ (forall wpo_injective_left_step_old_state_injective wpo_injective_right_step_old_state_injective wpo_injective_value_step_old_state_injective. (exists wpo_gap_step_old_state_injective_left_bound. wpo_gap_step_old_state_injective_left_bound + S (wpo_injective_left_step_old_state_injective) = m + m) -> (exists wpo_gap_step_old_state_injective_right_bound. wpo_gap_step_old_state_injective_right_bound + S (wpo_injective_right_step_old_state_injective) = m + m) -> (((exists wpo_beta_height_step_old_state_injective_left_entry. wpo_beta_height_step_old_state_injective_left_entry + S (wpo_injective_value_step_old_state_injective) = S ((S (wpo_injective_left_step_old_state_injective)) * c)) /\ exists wpo_beta_quotient_step_old_state_injective_left_entry. b = wpo_beta_quotient_step_old_state_injective_left_entry * S ((S (wpo_injective_left_step_old_state_injective)) * c) + (wpo_injective_value_step_old_state_injective))) -> (((exists wpo_beta_height_step_old_state_injective_right_entry. wpo_beta_height_step_old_state_injective_right_entry + S (wpo_injective_value_step_old_state_injective) = S ((S (wpo_injective_right_step_old_state_injective)) * c)) /\ exists wpo_beta_quotient_step_old_state_injective_right_entry. b = wpo_beta_quotient_step_old_state_injective_right_entry * S ((S (wpo_injective_right_step_old_state_injective)) * c) + (wpo_injective_value_step_old_state_injective))) -> wpo_injective_left_step_old_state_injective = wpo_injective_right_step_old_state_injective))))) -> (forall espi_pair_step_old_history. (exists wpo_gap_step_old_history_pair_bound. wpo_gap_step_old_history_pair_bound + S (espi_pair_step_old_history) = m) -> exists espi_left_step_old_history espi_right_step_old_history. (((((exists wpo_beta_height_step_old_history_left_entry. wpo_beta_height_step_old_history_left_entry + S (espi_left_step_old_history) = S ((S (espi_pair_step_old_history + espi_pair_step_old_history)) * c)) /\ exists wpo_beta_quotient_step_old_history_left_entry. b = wpo_beta_quotient_step_old_history_left_entry * S ((S (espi_pair_step_old_history + espi_pair_step_old_history)) * c) + (espi_left_step_old_history))) /\ (((((exists wpo_beta_height_step_old_history_right_entry. wpo_beta_height_step_old_history_right_entry + S (espi_right_step_old_history) = S ((S (S (espi_pair_step_old_history + espi_pair_step_old_history))) * c)) /\ exists wpo_beta_quotient_step_old_history_right_entry. b = wpo_beta_quotient_step_old_history_right_entry * S ((S (S (espi_pair_step_old_history + espi_pair_step_old_history))) * c) + (espi_right_step_old_history))) /\ (((exists wpo_beta_height_step_old_history_scaled_edge. wpo_beta_height_step_old_history_scaled_edge + S (S espi_right_step_old_history) = S ((S (espi_left_step_old_history)) * v)) /\ exists wpo_beta_quotient_step_old_history_scaled_edge. u = wpo_beta_quotient_step_old_history_scaled_edge * S ((S (espi_left_step_old_history)) * v) + (S espi_right_step_old_history)))))))) -> (exists z d. (((((forall espo_position_step_result_state_closed espo_source_step_result_state_closed espo_mate_step_result_state_closed. (exists wpo_gap_step_result_state_closed_position_bound. wpo_gap_step_result_state_closed_position_bound + S (espo_position_step_result_state_closed) = S (S (m + m))) -> (((exists wpo_beta_height_step_result_state_closed_source_entry. wpo_beta_height_step_result_state_closed_source_entry + S (espo_source_step_result_state_closed) = S ((S (espo_position_step_result_state_closed)) * d)) /\ exists wpo_beta_quotient_step_result_state_closed_source_entry. z = wpo_beta_quotient_step_result_state_closed_source_entry * S ((S (espo_position_step_result_state_closed)) * d) + (espo_source_step_result_state_closed))) -> (((exists wpo_beta_height_step_result_state_closed_scaled_entry. wpo_beta_height_step_result_state_closed_scaled_entry + S (S espo_mate_step_result_state_closed) = S ((S (espo_source_step_result_state_closed)) * v)) /\ exists wpo_beta_quotient_step_result_state_closed_scaled_entry. u = wpo_beta_quotient_step_result_state_closed_scaled_entry * S ((S (espo_source_step_result_state_closed)) * v) + (S espo_mate_step_result_state_closed))) -> exists espo_mate_position_step_result_state_closed. ((exists wpo_gap_step_result_state_closed_mate_bound. wpo_gap_step_result_state_closed_mate_bound + S (espo_mate_position_step_result_state_closed) = S (S (m + m))) /\ (((exists wpo_beta_height_step_result_state_closed_mate_entry. wpo_beta_height_step_result_state_closed_mate_entry + S (espo_mate_step_result_state_closed) = S ((S (espo_mate_position_step_result_state_closed)) * d)) /\ exists wpo_beta_quotient_step_result_state_closed_mate_entry. z = wpo_beta_quotient_step_result_state_closed_mate_entry * S ((S (espo_mate_position_step_result_state_closed)) * d) + (espo_mate_step_result_state_closed))))) /\ (((forall fom_index_step_result_state_bounded. (exists fom_gap_step_result_state_bounded_index_bound. fom_gap_step_result_state_bounded_index_bound + S (fom_index_step_result_state_bounded) = S (S (m + m))) -> exists fom_value_step_result_state_bounded. ((((exists fom_beta_height_step_result_state_bounded_entry. fom_beta_height_step_result_state_bounded_entry + S (fom_value_step_result_state_bounded) = S ((S (fom_index_step_result_state_bounded)) * d)) /\ exists fom_beta_quotient_step_result_state_bounded_entry. z = fom_beta_quotient_step_result_state_bounded_entry * S ((S (fom_index_step_result_state_bounded)) * d) + (fom_value_step_result_state_bounded))) /\ (exists fom_gap_step_result_state_bounded_value_bound. fom_gap_step_result_state_bounded_value_bound + S (fom_value_step_result_state_bounded) = n))) /\ (forall wpo_injective_left_step_result_state_injective wpo_injective_right_step_result_state_injective wpo_injective_value_step_result_state_injective. (exists wpo_gap_step_result_state_injective_left_bound. wpo_gap_step_result_state_injective_left_bound + S (wpo_injective_left_step_result_state_injective) = S (S (m + m))) -> (exists wpo_gap_step_result_state_injective_right_bound. wpo_gap_step_result_state_injective_right_bound + S (wpo_injective_right_step_result_state_injective) = S (S (m + m))) -> (((exists wpo_beta_height_step_result_state_injective_left_entry. wpo_beta_height_step_result_state_injective_left_entry + S (wpo_injective_value_step_result_state_injective) = S ((S (wpo_injective_left_step_result_state_injective)) * d)) /\ exists wpo_beta_quotient_step_result_state_injective_left_entry. z = wpo_beta_quotient_step_result_state_injective_left_entry * S ((S (wpo_injective_left_step_result_state_injective)) * d) + (wpo_injective_value_step_result_state_injective))) -> (((exists wpo_beta_height_step_result_state_injective_right_entry. wpo_beta_height_step_result_state_injective_right_entry + S (wpo_injective_value_step_result_state_injective) = S ((S (wpo_injective_right_step_result_state_injective)) * d)) /\ exists wpo_beta_quotient_step_result_state_injective_right_entry. z = wpo_beta_quotient_step_result_state_injective_right_entry * S ((S (wpo_injective_right_step_result_state_injective)) * d) + (wpo_injective_value_step_result_state_injective))) -> wpo_injective_left_step_result_state_injective = wpo_injective_right_step_result_state_injective))))) /\ (forall espi_pair_append_new_history. (exists wpo_gap_append_new_history_pair_bound. wpo_gap_append_new_history_pair_bound + S (espi_pair_append_new_history) = S m) -> exists espi_left_append_new_history espi_right_append_new_history. (((((exists wpo_beta_height_append_new_history_left_entry. wpo_beta_height_append_new_history_left_entry + S (espi_left_append_new_history) = S ((S (espi_pair_append_new_history + espi_pair_append_new_history)) * d)) /\ exists wpo_beta_quotient_append_new_history_left_entry. z = wpo_beta_quotient_append_new_history_left_entry * S ((S (espi_pair_append_new_history + espi_pair_append_new_history)) * d) + (espi_left_append_new_history))) /\ (((((exists wpo_beta_height_append_new_history_right_entry. wpo_beta_height_append_new_history_right_entry + S (espi_right_append_new_history) = S ((S (S (espi_pair_append_new_history + espi_pair_append_new_history))) * d)) /\ exists wpo_beta_quotient_append_new_history_right_entry. z = wpo_beta_quotient_append_new_history_right_entry * S ((S (S (espi_pair_append_new_history + espi_pair_append_new_history))) * d) + (espi_right_append_new_history))) /\ (((exists wpo_beta_height_append_new_history_scaled_edge. wpo_beta_height_append_new_history_scaled_edge + S (S espi_right_append_new_history) = S ((S (espi_left_append_new_history)) * v)) /\ exists wpo_beta_quotient_append_new_history_scaled_edge. u = wpo_beta_quotient_append_new_history_scaled_edge * S ((S (espi_left_append_new_history)) * v) + (S espi_right_append_new_history)))))))))))Structural proof guide
Generated structural guide
Append one fixed-point-free scaled orbit and preserve iterable state plus history.
Use the direct prerequisites scaled_inverse_pair_order_choose_append, beta_prefix_append_two_bounded_into, adjacent_scaled_orbit_history_append as previously established PA formulas.
The proof proceeds by case analysis (15), intermediate claims (5).
Referenced ingredients
Proof neighborhood
Direct dependencies
PA009O scaled_inverse_pair_order_choose_append PA009P beta_prefix_append_two_bounded_into PA009S adjacent_scaled_orbit_history_appendDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Linked names are exact direct references. This Alpha-v16 checked-use theorem is independently kernel-checked when replayed; it is not a Stable theorem.
- 0001
intro p - 0002
intro a - 0003
intro n - 0004
intro u - 0005
intro v - 0006
intro b - 0007
intro c - 0008
intro m - 0009
intro hpn - 0010
intro hp - 0011
intro hnotqres - 0012
intro hprefix - 0013
intro hshort - 0014
intro hstate - 0015
intro hhistory - 0016
cases hstate - 0017
cases hstate_right - 0018
have hraw : exists z d i j. (((((((exists wpo_beta_height_step_payload_trace_first. wpo_beta_height_step_payload_trace_first + S (i) = S ((S (m + m)) * d)) /\ exists wpo_beta_quotient_step_payload_trace_first. z = wpo_beta_quotient_step_payload_trace_first * S ((S (m + m)) * d) + (i))) /\ ((((exists wpo_beta_height_step_payload_trace_second. wpo_beta_height_step_payload_trace_second + S (j) = S ((S (S (m + m))) * d)) /\ exists wpo_beta_quotient_step_payload_trace_second. z = wpo_beta_quotient_step_payload_trace_second * S ((S (S (m + m))) * d) + (j))) /\ (forall wpo_old_index_step_payload_trace wpo_old_value_step_payload_trace. (exists wpo_gap_step_payload_trace_old_bound. wpo_gap_step_payload_trace_old_bound + S (wpo_old_index_step_payload_trace) = m + m) -> (((exists wpo_beta_height_step_payload_trace_old_entry. wpo_beta_height_step_payload_trace_old_entry + S (wpo_old_value_step_payload_trace) = S ((S (wpo_old_index_step_payload_trace)) * c)) /\ exists wpo_beta_quotient_step_payload_trace_old_entry. b = wpo_beta_quotient_step_payload_trace_old_entry * S ((S (wpo_old_index_step_payload_trace)) * c) + (wpo_old_value_step_payload_trace))) -> (((exists wpo_beta_height_step_payload_trace_new_entry. wpo_beta_height_step_payload_trace_new_entry + S (wpo_old_value_step_payload_trace) = S ((S (wpo_old_index_step_payload_trace)) * d)) /\ exists wpo_beta_quotient_step_payload_trace_new_entry. z = wpo_beta_quotient_step_payload_trace_new_entry * S ((S (wpo_old_index_step_payload_trace)) * d) + (wpo_old_value_step_payload_trace))))))) /\ (((exists wpo_gap_step_payload_source_bound. wpo_gap_step_payload_source_bound + S (i) = n) /\ (((exists wpo_gap_step_payload_mate_bound. wpo_gap_step_payload_mate_bound + S (j) = n) /\ (((~(exists wpo_index_step_payload_source_omit_contains. ((exists wpo_gap_step_payload_source_omit_contains_bound. wpo_gap_step_payload_source_omit_contains_bound + S (wpo_index_step_payload_source_omit_contains) = m + m) /\ (((exists wpo_beta_height_step_payload_source_omit_contains_entry. wpo_beta_height_step_payload_source_omit_contains_entry + S (i) = S ((S (wpo_index_step_payload_source_omit_contains)) * c)) /\ exists wpo_beta_quotient_step_payload_source_omit_contains_entry. b = wpo_beta_quotient_step_payload_source_omit_contains_entry * S ((S (wpo_index_step_payload_source_omit_contains)) * c) + (i)))))) /\ (((~(exists wpo_index_step_payload_mate_omit_contains. ((exists wpo_gap_step_payload_mate_omit_contains_bound. wpo_gap_step_payload_mate_omit_contains_bound + S (wpo_index_step_payload_mate_omit_contains) = m + m) /\ (((exists wpo_beta_height_step_payload_mate_omit_contains_entry. wpo_beta_height_step_payload_mate_omit_contains_entry + S (j) = S ((S (wpo_index_step_payload_mate_omit_contains)) * c)) /\ exists wpo_beta_quotient_step_payload_mate_omit_contains_entry. b = wpo_beta_quotient_step_payload_mate_omit_contains_entry * S ((S (wpo_index_step_payload_mate_omit_contains)) * c) + (j)))))) /\ (((~(i = j)) /\ (((((exists wpo_beta_height_step_payload_forward. wpo_beta_height_step_payload_forward + S (S j) = S ((S (i)) * v)) /\ exists wpo_beta_quotient_step_payload_forward. u = wpo_beta_quotient_step_payload_forward * S ((S (i)) * v) + (S j))) /\ (((((exists wpo_beta_height_step_payload_back. wpo_beta_height_step_payload_back + S (S i) = S ((S (j)) * v)) /\ exists wpo_beta_quotient_step_payload_back. u = wpo_beta_quotient_step_payload_back * S ((S (j)) * v) + (S i))) /\ (((forall espo_position_step_payload_closed_after espo_source_step_payload_closed_after espo_mate_step_payload_closed_after. (exists wpo_gap_step_payload_closed_after_position_bound. wpo_gap_step_payload_closed_after_position_bound + S (espo_position_step_payload_closed_after) = S (S (m + m))) -> (((exists wpo_beta_height_step_payload_closed_after_source_entry. wpo_beta_height_step_payload_closed_after_source_entry + S (espo_source_step_payload_closed_after) = S ((S (espo_position_step_payload_closed_after)) * d)) /\ exists wpo_beta_quotient_step_payload_closed_after_source_entry. z = wpo_beta_quotient_step_payload_closed_after_source_entry * S ((S (espo_position_step_payload_closed_after)) * d) + (espo_source_step_payload_closed_after))) -> (((exists wpo_beta_height_step_payload_closed_after_scaled_entry. wpo_beta_height_step_payload_closed_after_scaled_entry + S (S espo_mate_step_payload_closed_after) = S ((S (espo_source_step_payload_closed_after)) * v)) /\ exists wpo_beta_quotient_step_payload_closed_after_scaled_entry. u = wpo_beta_quotient_step_payload_closed_after_scaled_entry * S ((S (espo_source_step_payload_closed_after)) * v) + (S espo_mate_step_payload_closed_after))) -> exists espo_mate_position_step_payload_closed_after. ((exists wpo_gap_step_payload_closed_after_mate_bound. wpo_gap_step_payload_closed_after_mate_bound + S (espo_mate_position_step_payload_closed_after) = S (S (m + m))) /\ (((exists wpo_beta_height_step_payload_closed_after_mate_entry. wpo_beta_height_step_payload_closed_after_mate_entry + S (espo_mate_step_payload_closed_after) = S ((S (espo_mate_position_step_payload_closed_after)) * d)) /\ exists wpo_beta_quotient_step_payload_closed_after_mate_entry. z = wpo_beta_quotient_step_payload_closed_after_mate_entry * S ((S (espo_mate_position_step_payload_closed_after)) * d) + (espo_mate_step_payload_closed_after))))) /\ (forall wpo_injective_left_step_payload_injective_after wpo_injective_right_step_payload_injective_after wpo_injective_value_step_payload_injective_after. (exists wpo_gap_step_payload_injective_after_left_bound. wpo_gap_step_payload_injective_after_left_bound + S (wpo_injective_left_step_payload_injective_after) = S (S (m + m))) -> (exists wpo_gap_step_payload_injective_after_right_bound. wpo_gap_step_payload_injective_after_right_bound + S (wpo_injective_right_step_payload_injective_after) = S (S (m + m))) -> (((exists wpo_beta_height_step_payload_injective_after_left_entry. wpo_beta_height_step_payload_injective_after_left_entry + S (wpo_injective_value_step_payload_injective_after) = S ((S (wpo_injective_left_step_payload_injective_after)) * d)) /\ exists wpo_beta_quotient_step_payload_injective_after_left_entry. z = wpo_beta_quotient_step_payload_injective_after_left_entry * S ((S (wpo_injective_left_step_payload_injective_after)) * d) + (wpo_injective_value_step_payload_injective_after))) -> (((exists wpo_beta_height_step_payload_injective_after_right_entry. wpo_beta_height_step_payload_injective_after_right_entry + S (wpo_injective_value_step_payload_injective_after) = S ((S (wpo_injective_right_step_payload_injective_after)) * d)) /\ exists wpo_beta_quotient_step_payload_injective_after_right_entry. z = wpo_beta_quotient_step_payload_injective_after_right_entry * S ((S (wpo_injective_right_step_payload_injective_after)) * d) + (wpo_injective_value_step_payload_injective_after))) -> wpo_injective_left_step_payload_injective_after = wpo_injective_right_step_payload_injective_after))))))))))))))))))) - 0019
specialize scaled_inverse_pair_order_choose_append p - 0020
specialize scaled_inverse_pair_order_choose_append a - 0021
specialize scaled_inverse_pair_order_choose_append n - 0022
specialize scaled_inverse_pair_order_choose_append u - 0023
specialize scaled_inverse_pair_order_choose_append v - 0024
specialize scaled_inverse_pair_order_choose_append b - 0025
specialize scaled_inverse_pair_order_choose_append c - 0026
specialize scaled_inverse_pair_order_choose_append (m + m) - 0027
apply scaled_inverse_pair_order_choose_append - 0028
exact hpn - 0029
exact hp - 0030
exact hnotqres - 0031
exact hprefix - 0032
exact hshort - 0033
exact hstate_left - 0034
exact hstate_right_right - 0035
cases hraw - 0036
cases hraw_witness - 0037
cases hraw_witness_witness - 0038
cases hraw_witness_witness_witness - 0039
have hparts : ((((((exists wpo_beta_height_step_payload_x_trace_first. wpo_beta_height_step_payload_x_trace_first + S (x2) = S ((S (m + m)) * x1)) /\ exists wpo_beta_quotient_step_payload_x_trace_first. x = wpo_beta_quotient_step_payload_x_trace_first * S ((S (m + m)) * x1) + (x2))) /\ ((((exists wpo_beta_height_step_payload_x_trace_second. wpo_beta_height_step_payload_x_trace_second + S (x3) = S ((S (S (m + m))) * x1)) /\ exists wpo_beta_quotient_step_payload_x_trace_second. x = wpo_beta_quotient_step_payload_x_trace_second * S ((S (S (m + m))) * x1) + (x3))) /\ (forall wpo_old_index_step_payload_x_trace wpo_old_value_step_payload_x_trace. (exists wpo_gap_step_payload_x_trace_old_bound. wpo_gap_step_payload_x_trace_old_bound + S (wpo_old_index_step_payload_x_trace) = m + m) -> (((exists wpo_beta_height_step_payload_x_trace_old_entry. wpo_beta_height_step_payload_x_trace_old_entry + S (wpo_old_value_step_payload_x_trace) = S ((S (wpo_old_index_step_payload_x_trace)) * c)) /\ exists wpo_beta_quotient_step_payload_x_trace_old_entry. b = wpo_beta_quotient_step_payload_x_trace_old_entry * S ((S (wpo_old_index_step_payload_x_trace)) * c) + (wpo_old_value_step_payload_x_trace))) -> (((exists wpo_beta_height_step_payload_x_trace_new_entry. wpo_beta_height_step_payload_x_trace_new_entry + S (wpo_old_value_step_payload_x_trace) = S ((S (wpo_old_index_step_payload_x_trace)) * x1)) /\ exists wpo_beta_quotient_step_payload_x_trace_new_entry. x = wpo_beta_quotient_step_payload_x_trace_new_entry * S ((S (wpo_old_index_step_payload_x_trace)) * x1) + (wpo_old_value_step_payload_x_trace))))))) /\ (((exists wpo_gap_step_payload_x_source_bound. wpo_gap_step_payload_x_source_bound + S (x2) = n) /\ (((exists wpo_gap_step_payload_x_mate_bound. wpo_gap_step_payload_x_mate_bound + S (x3) = n) /\ (((~(exists wpo_index_step_payload_x_source_omit_contains. ((exists wpo_gap_step_payload_x_source_omit_contains_bound. wpo_gap_step_payload_x_source_omit_contains_bound + S (wpo_index_step_payload_x_source_omit_contains) = m + m) /\ (((exists wpo_beta_height_step_payload_x_source_omit_contains_entry. wpo_beta_height_step_payload_x_source_omit_contains_entry + S (x2) = S ((S (wpo_index_step_payload_x_source_omit_contains)) * c)) /\ exists wpo_beta_quotient_step_payload_x_source_omit_contains_entry. b = wpo_beta_quotient_step_payload_x_source_omit_contains_entry * S ((S (wpo_index_step_payload_x_source_omit_contains)) * c) + (x2)))))) /\ (((~(exists wpo_index_step_payload_x_mate_omit_contains. ((exists wpo_gap_step_payload_x_mate_omit_contains_bound. wpo_gap_step_payload_x_mate_omit_contains_bound + S (wpo_index_step_payload_x_mate_omit_contains) = m + m) /\ (((exists wpo_beta_height_step_payload_x_mate_omit_contains_entry. wpo_beta_height_step_payload_x_mate_omit_contains_entry + S (x3) = S ((S (wpo_index_step_payload_x_mate_omit_contains)) * c)) /\ exists wpo_beta_quotient_step_payload_x_mate_omit_contains_entry. b = wpo_beta_quotient_step_payload_x_mate_omit_contains_entry * S ((S (wpo_index_step_payload_x_mate_omit_contains)) * c) + (x3)))))) /\ (((~(x2 = x3)) /\ (((((exists wpo_beta_height_step_payload_x_forward. wpo_beta_height_step_payload_x_forward + S (S x3) = S ((S (x2)) * v)) /\ exists wpo_beta_quotient_step_payload_x_forward. u = wpo_beta_quotient_step_payload_x_forward * S ((S (x2)) * v) + (S x3))) /\ (((((exists wpo_beta_height_step_payload_x_back. wpo_beta_height_step_payload_x_back + S (S x2) = S ((S (x3)) * v)) /\ exists wpo_beta_quotient_step_payload_x_back. u = wpo_beta_quotient_step_payload_x_back * S ((S (x3)) * v) + (S x2))) /\ (((forall espo_position_step_payload_x_closed_after espo_source_step_payload_x_closed_after espo_mate_step_payload_x_closed_after. (exists wpo_gap_step_payload_x_closed_after_position_bound. wpo_gap_step_payload_x_closed_after_position_bound + S (espo_position_step_payload_x_closed_after) = S (S (m + m))) -> (((exists wpo_beta_height_step_payload_x_closed_after_source_entry. wpo_beta_height_step_payload_x_closed_after_source_entry + S (espo_source_step_payload_x_closed_after) = S ((S (espo_position_step_payload_x_closed_after)) * x1)) /\ exists wpo_beta_quotient_step_payload_x_closed_after_source_entry. x = wpo_beta_quotient_step_payload_x_closed_after_source_entry * S ((S (espo_position_step_payload_x_closed_after)) * x1) + (espo_source_step_payload_x_closed_after))) -> (((exists wpo_beta_height_step_payload_x_closed_after_scaled_entry. wpo_beta_height_step_payload_x_closed_after_scaled_entry + S (S espo_mate_step_payload_x_closed_after) = S ((S (espo_source_step_payload_x_closed_after)) * v)) /\ exists wpo_beta_quotient_step_payload_x_closed_after_scaled_entry. u = wpo_beta_quotient_step_payload_x_closed_after_scaled_entry * S ((S (espo_source_step_payload_x_closed_after)) * v) + (S espo_mate_step_payload_x_closed_after))) -> exists espo_mate_position_step_payload_x_closed_after. ((exists wpo_gap_step_payload_x_closed_after_mate_bound. wpo_gap_step_payload_x_closed_after_mate_bound + S (espo_mate_position_step_payload_x_closed_after) = S (S (m + m))) /\ (((exists wpo_beta_height_step_payload_x_closed_after_mate_entry. wpo_beta_height_step_payload_x_closed_after_mate_entry + S (espo_mate_step_payload_x_closed_after) = S ((S (espo_mate_position_step_payload_x_closed_after)) * x1)) /\ exists wpo_beta_quotient_step_payload_x_closed_after_mate_entry. x = wpo_beta_quotient_step_payload_x_closed_after_mate_entry * S ((S (espo_mate_position_step_payload_x_closed_after)) * x1) + (espo_mate_step_payload_x_closed_after))))) /\ (forall wpo_injective_left_step_payload_x_injective_after wpo_injective_right_step_payload_x_injective_after wpo_injective_value_step_payload_x_injective_after. (exists wpo_gap_step_payload_x_injective_after_left_bound. wpo_gap_step_payload_x_injective_after_left_bound + S (wpo_injective_left_step_payload_x_injective_after) = S (S (m + m))) -> (exists wpo_gap_step_payload_x_injective_after_right_bound. wpo_gap_step_payload_x_injective_after_right_bound + S (wpo_injective_right_step_payload_x_injective_after) = S (S (m + m))) -> (((exists wpo_beta_height_step_payload_x_injective_after_left_entry. wpo_beta_height_step_payload_x_injective_after_left_entry + S (wpo_injective_value_step_payload_x_injective_after) = S ((S (wpo_injective_left_step_payload_x_injective_after)) * x1)) /\ exists wpo_beta_quotient_step_payload_x_injective_after_left_entry. x = wpo_beta_quotient_step_payload_x_injective_after_left_entry * S ((S (wpo_injective_left_step_payload_x_injective_after)) * x1) + (wpo_injective_value_step_payload_x_injective_after))) -> (((exists wpo_beta_height_step_payload_x_injective_after_right_entry. wpo_beta_height_step_payload_x_injective_after_right_entry + S (wpo_injective_value_step_payload_x_injective_after) = S ((S (wpo_injective_right_step_payload_x_injective_after)) * x1)) /\ exists wpo_beta_quotient_step_payload_x_injective_after_right_entry. x = wpo_beta_quotient_step_payload_x_injective_after_right_entry * S ((S (wpo_injective_right_step_payload_x_injective_after)) * x1) + (wpo_injective_value_step_payload_x_injective_after))) -> wpo_injective_left_step_payload_x_injective_after = wpo_injective_right_step_payload_x_injective_after)))))))))))))))))) - 0040
exact hraw_witness_witness_witness_witness - 0041
cases hparts - 0042
cases hparts_right - 0043
cases hparts_right_right - 0044
cases hparts_right_right_right - 0045
cases hparts_right_right_right_right - 0046
cases hparts_right_right_right_right_right - 0047
cases hparts_right_right_right_right_right_right - 0048
cases hparts_right_right_right_right_right_right_right - 0049
cases hparts_right_right_right_right_right_right_right_right - 0050
have hbounded_after : forall fom_index_bounded_after_x. (exists fom_gap_bounded_after_x_index_bound. fom_gap_bounded_after_x_index_bound + S (fom_index_bounded_after_x) = S (S (m + m))) -> exists fom_value_bounded_after_x. ((((exists fom_beta_height_bounded_after_x_entry. fom_beta_height_bounded_after_x_entry + S (fom_value_bounded_after_x) = S ((S (fom_index_bounded_after_x)) * x1)) /\ exists fom_beta_quotient_bounded_after_x_entry. x = fom_beta_quotient_bounded_after_x_entry * S ((S (fom_index_bounded_after_x)) * x1) + (fom_value_bounded_after_x))) /\ (exists fom_gap_bounded_after_x_value_bound. fom_gap_bounded_after_x_value_bound + S (fom_value_bounded_after_x) = n)) - 0051
specialize beta_prefix_append_two_bounded_into b - 0052
specialize beta_prefix_append_two_bounded_into c - 0053
specialize beta_prefix_append_two_bounded_into x - 0054
specialize beta_prefix_append_two_bounded_into x1 - 0055
specialize beta_prefix_append_two_bounded_into (m + m) - 0056
specialize beta_prefix_append_two_bounded_into n - 0057
specialize beta_prefix_append_two_bounded_into x2 - 0058
specialize beta_prefix_append_two_bounded_into x3 - 0059
apply beta_prefix_append_two_bounded_into - 0060
exact hparts_left - 0061
exact hstate_right_left - 0062
exact hparts_right_left - 0063
exact hparts_right_right_left - 0064
have hhistory_after : forall espi_pair_history_after_x. (exists wpo_gap_history_after_x_pair_bound. wpo_gap_history_after_x_pair_bound + S (espi_pair_history_after_x) = S m) -> exists espi_left_history_after_x espi_right_history_after_x. (((((exists wpo_beta_height_history_after_x_left_entry. wpo_beta_height_history_after_x_left_entry + S (espi_left_history_after_x) = S ((S (espi_pair_history_after_x + espi_pair_history_after_x)) * x1)) /\ exists wpo_beta_quotient_history_after_x_left_entry. x = wpo_beta_quotient_history_after_x_left_entry * S ((S (espi_pair_history_after_x + espi_pair_history_after_x)) * x1) + (espi_left_history_after_x))) /\ (((((exists wpo_beta_height_history_after_x_right_entry. wpo_beta_height_history_after_x_right_entry + S (espi_right_history_after_x) = S ((S (S (espi_pair_history_after_x + espi_pair_history_after_x))) * x1)) /\ exists wpo_beta_quotient_history_after_x_right_entry. x = wpo_beta_quotient_history_after_x_right_entry * S ((S (S (espi_pair_history_after_x + espi_pair_history_after_x))) * x1) + (espi_right_history_after_x))) /\ (((exists wpo_beta_height_history_after_x_scaled_edge. wpo_beta_height_history_after_x_scaled_edge + S (S espi_right_history_after_x) = S ((S (espi_left_history_after_x)) * v)) /\ exists wpo_beta_quotient_history_after_x_scaled_edge. u = wpo_beta_quotient_history_after_x_scaled_edge * S ((S (espi_left_history_after_x)) * v) + (S espi_right_history_after_x))))))) - 0065
specialize adjacent_scaled_orbit_history_append u - 0066
specialize adjacent_scaled_orbit_history_append v - 0067
specialize adjacent_scaled_orbit_history_append b - 0068
specialize adjacent_scaled_orbit_history_append c - 0069
specialize adjacent_scaled_orbit_history_append x - 0070
specialize adjacent_scaled_orbit_history_append x1 - 0071
specialize adjacent_scaled_orbit_history_append m - 0072
specialize adjacent_scaled_orbit_history_append x2 - 0073
specialize adjacent_scaled_orbit_history_append x3 - 0074
apply adjacent_scaled_orbit_history_append - 0075
exact hhistory - 0076
exact hparts_left - 0077
exact hparts_right_right_right_right_right_right_left - 0078
have hstate_after : ((forall espo_position_state_after_x_closed espo_source_state_after_x_closed espo_mate_state_after_x_closed. (exists wpo_gap_state_after_x_closed_position_bound. wpo_gap_state_after_x_closed_position_bound + S (espo_position_state_after_x_closed) = S (S (m + m))) -> (((exists wpo_beta_height_state_after_x_closed_source_entry. wpo_beta_height_state_after_x_closed_source_entry + S (espo_source_state_after_x_closed) = S ((S (espo_position_state_after_x_closed)) * x1)) /\ exists wpo_beta_quotient_state_after_x_closed_source_entry. x = wpo_beta_quotient_state_after_x_closed_source_entry * S ((S (espo_position_state_after_x_closed)) * x1) + (espo_source_state_after_x_closed))) -> (((exists wpo_beta_height_state_after_x_closed_scaled_entry. wpo_beta_height_state_after_x_closed_scaled_entry + S (S espo_mate_state_after_x_closed) = S ((S (espo_source_state_after_x_closed)) * v)) /\ exists wpo_beta_quotient_state_after_x_closed_scaled_entry. u = wpo_beta_quotient_state_after_x_closed_scaled_entry * S ((S (espo_source_state_after_x_closed)) * v) + (S espo_mate_state_after_x_closed))) -> exists espo_mate_position_state_after_x_closed. ((exists wpo_gap_state_after_x_closed_mate_bound. wpo_gap_state_after_x_closed_mate_bound + S (espo_mate_position_state_after_x_closed) = S (S (m + m))) /\ (((exists wpo_beta_height_state_after_x_closed_mate_entry. wpo_beta_height_state_after_x_closed_mate_entry + S (espo_mate_state_after_x_closed) = S ((S (espo_mate_position_state_after_x_closed)) * x1)) /\ exists wpo_beta_quotient_state_after_x_closed_mate_entry. x = wpo_beta_quotient_state_after_x_closed_mate_entry * S ((S (espo_mate_position_state_after_x_closed)) * x1) + (espo_mate_state_after_x_closed))))) /\ (((forall fom_index_state_after_x_bounded. (exists fom_gap_state_after_x_bounded_index_bound. fom_gap_state_after_x_bounded_index_bound + S (fom_index_state_after_x_bounded) = S (S (m + m))) -> exists fom_value_state_after_x_bounded. ((((exists fom_beta_height_state_after_x_bounded_entry. fom_beta_height_state_after_x_bounded_entry + S (fom_value_state_after_x_bounded) = S ((S (fom_index_state_after_x_bounded)) * x1)) /\ exists fom_beta_quotient_state_after_x_bounded_entry. x = fom_beta_quotient_state_after_x_bounded_entry * S ((S (fom_index_state_after_x_bounded)) * x1) + (fom_value_state_after_x_bounded))) /\ (exists fom_gap_state_after_x_bounded_value_bound. fom_gap_state_after_x_bounded_value_bound + S (fom_value_state_after_x_bounded) = n))) /\ (forall wpo_injective_left_state_after_x_injective wpo_injective_right_state_after_x_injective wpo_injective_value_state_after_x_injective. (exists wpo_gap_state_after_x_injective_left_bound. wpo_gap_state_after_x_injective_left_bound + S (wpo_injective_left_state_after_x_injective) = S (S (m + m))) -> (exists wpo_gap_state_after_x_injective_right_bound. wpo_gap_state_after_x_injective_right_bound + S (wpo_injective_right_state_after_x_injective) = S (S (m + m))) -> (((exists wpo_beta_height_state_after_x_injective_left_entry. wpo_beta_height_state_after_x_injective_left_entry + S (wpo_injective_value_state_after_x_injective) = S ((S (wpo_injective_left_state_after_x_injective)) * x1)) /\ exists wpo_beta_quotient_state_after_x_injective_left_entry. x = wpo_beta_quotient_state_after_x_injective_left_entry * S ((S (wpo_injective_left_state_after_x_injective)) * x1) + (wpo_injective_value_state_after_x_injective))) -> (((exists wpo_beta_height_state_after_x_injective_right_entry. wpo_beta_height_state_after_x_injective_right_entry + S (wpo_injective_value_state_after_x_injective) = S ((S (wpo_injective_right_state_after_x_injective)) * x1)) /\ exists wpo_beta_quotient_state_after_x_injective_right_entry. x = wpo_beta_quotient_state_after_x_injective_right_entry * S ((S (wpo_injective_right_state_after_x_injective)) * x1) + (wpo_injective_value_state_after_x_injective))) -> wpo_injective_left_state_after_x_injective = wpo_injective_right_state_after_x_injective)))) - 0079
split - 0080
exact hparts_right_right_right_right_right_right_right_right_left - 0081
split - 0082
exact hbounded_after - 0083
exact hparts_right_right_right_right_right_right_right_right_right - 0084
exists x - 0085
exists x1 - 0086
split - 0087
exact hstate_after - 0088
exact hhistory_after