BT00Q8

power_valuation_functional

Alpha body-checked ยท checked-use disabled

Canonical bounded power valuations have a unique exponent.

Exact expanded PA statement

forall p a e f. (((exists bpv_gap_functional_left_exponent_bound. bpv_gap_functional_left_exponent_bound + e = a) /\ (exists bpv_result_functional_left_selected. ((exists ff_b_functional_left_selected_power ff_c_functional_left_selected_power. ((forall ff_i_functional_left_selected_power_repeat. (exists ff_lt_functional_left_selected_power_repeat_bound. ff_lt_functional_left_selected_power_repeat_bound + S ff_i_functional_left_selected_power_repeat = e) -> (((exists ff_h_functional_left_selected_power_repeat_decoded. ff_h_functional_left_selected_power_repeat_decoded + S (p) = S ((S (ff_i_functional_left_selected_power_repeat)) * ff_c_functional_left_selected_power)) /\ exists ff_q_functional_left_selected_power_repeat_decoded. ff_b_functional_left_selected_power = ff_q_functional_left_selected_power_repeat_decoded * S ((S (ff_i_functional_left_selected_power_repeat)) * ff_c_functional_left_selected_power) + (p)))) /\ (exists ff_u_functional_left_selected_power_product ff_v_functional_left_selected_power_product. ((((exists ff_h_functional_left_selected_power_product_start. ff_h_functional_left_selected_power_product_start + S (1) = S ((S (0)) * ff_v_functional_left_selected_power_product)) /\ exists ff_q_functional_left_selected_power_product_start. ff_u_functional_left_selected_power_product = ff_q_functional_left_selected_power_product_start * S ((S (0)) * ff_v_functional_left_selected_power_product) + (1))) /\ ((((exists ff_h_functional_left_selected_power_product_terminal. ff_h_functional_left_selected_power_product_terminal + S (bpv_result_functional_left_selected) = S ((S (e)) * ff_v_functional_left_selected_power_product)) /\ exists ff_q_functional_left_selected_power_product_terminal. ff_u_functional_left_selected_power_product = ff_q_functional_left_selected_power_product_terminal * S ((S (e)) * ff_v_functional_left_selected_power_product) + (bpv_result_functional_left_selected))) /\ forall ff_i_functional_left_selected_power_product. (exists ff_lt_functional_left_selected_power_product_bound. ff_lt_functional_left_selected_power_product_bound + S ff_i_functional_left_selected_power_product = e) -> exists ff_p_functional_left_selected_power_product ff_r_functional_left_selected_power_product ff_s_functional_left_selected_power_product. ((((exists ff_h_functional_left_selected_power_product_factor. ff_h_functional_left_selected_power_product_factor + S (ff_p_functional_left_selected_power_product) = S ((S (ff_i_functional_left_selected_power_product)) * ff_c_functional_left_selected_power)) /\ exists ff_q_functional_left_selected_power_product_factor. ff_b_functional_left_selected_power = ff_q_functional_left_selected_power_product_factor * S ((S (ff_i_functional_left_selected_power_product)) * ff_c_functional_left_selected_power) + (ff_p_functional_left_selected_power_product))) /\ ((((exists ff_h_functional_left_selected_power_product_partial. ff_h_functional_left_selected_power_product_partial + S (ff_r_functional_left_selected_power_product) = S ((S (ff_i_functional_left_selected_power_product)) * ff_v_functional_left_selected_power_product)) /\ exists ff_q_functional_left_selected_power_product_partial. ff_u_functional_left_selected_power_product = ff_q_functional_left_selected_power_product_partial * S ((S (ff_i_functional_left_selected_power_product)) * ff_v_functional_left_selected_power_product) + (ff_r_functional_left_selected_power_product))) /\ ((((exists ff_h_functional_left_selected_power_product_successor. ff_h_functional_left_selected_power_product_successor + S (ff_s_functional_left_selected_power_product) = S ((S (S ff_i_functional_left_selected_power_product)) * ff_v_functional_left_selected_power_product)) /\ exists ff_q_functional_left_selected_power_product_successor. ff_u_functional_left_selected_power_product = ff_q_functional_left_selected_power_product_successor * S ((S (S ff_i_functional_left_selected_power_product)) * ff_v_functional_left_selected_power_product) + (ff_s_functional_left_selected_power_product))) /\ ff_s_functional_left_selected_power_product = ff_r_functional_left_selected_power_product * ff_p_functional_left_selected_power_product)))))))) /\ (exists bpv_factor_functional_left_selected_divides. a = bpv_result_functional_left_selected * bpv_factor_functional_left_selected_divides)))) /\ forall bpv_candidate_functional_left. (exists bpv_gap_functional_left_candidate_bound. bpv_gap_functional_left_candidate_bound + bpv_candidate_functional_left = a) -> (exists bpv_result_functional_left_candidate. ((exists ff_b_functional_left_candidate_power ff_c_functional_left_candidate_power. ((forall ff_i_functional_left_candidate_power_repeat. (exists ff_lt_functional_left_candidate_power_repeat_bound. ff_lt_functional_left_candidate_power_repeat_bound + S ff_i_functional_left_candidate_power_repeat = bpv_candidate_functional_left) -> (((exists ff_h_functional_left_candidate_power_repeat_decoded. ff_h_functional_left_candidate_power_repeat_decoded + S (p) = S ((S (ff_i_functional_left_candidate_power_repeat)) * ff_c_functional_left_candidate_power)) /\ exists ff_q_functional_left_candidate_power_repeat_decoded. ff_b_functional_left_candidate_power = ff_q_functional_left_candidate_power_repeat_decoded * S ((S (ff_i_functional_left_candidate_power_repeat)) * ff_c_functional_left_candidate_power) + (p)))) /\ (exists ff_u_functional_left_candidate_power_product ff_v_functional_left_candidate_power_product. ((((exists ff_h_functional_left_candidate_power_product_start. ff_h_functional_left_candidate_power_product_start + S (1) = S ((S (0)) * ff_v_functional_left_candidate_power_product)) /\ exists ff_q_functional_left_candidate_power_product_start. ff_u_functional_left_candidate_power_product = ff_q_functional_left_candidate_power_product_start * S ((S (0)) * ff_v_functional_left_candidate_power_product) + (1))) /\ ((((exists ff_h_functional_left_candidate_power_product_terminal. ff_h_functional_left_candidate_power_product_terminal + S (bpv_result_functional_left_candidate) = S ((S (bpv_candidate_functional_left)) * ff_v_functional_left_candidate_power_product)) /\ exists ff_q_functional_left_candidate_power_product_terminal. ff_u_functional_left_candidate_power_product = ff_q_functional_left_candidate_power_product_terminal * S ((S (bpv_candidate_functional_left)) * ff_v_functional_left_candidate_power_product) + (bpv_result_functional_left_candidate))) /\ forall ff_i_functional_left_candidate_power_product. (exists ff_lt_functional_left_candidate_power_product_bound. ff_lt_functional_left_candidate_power_product_bound + S ff_i_functional_left_candidate_power_product = bpv_candidate_functional_left) -> exists ff_p_functional_left_candidate_power_product ff_r_functional_left_candidate_power_product ff_s_functional_left_candidate_power_product. ((((exists ff_h_functional_left_candidate_power_product_factor. ff_h_functional_left_candidate_power_product_factor + S (ff_p_functional_left_candidate_power_product) = S ((S (ff_i_functional_left_candidate_power_product)) * ff_c_functional_left_candidate_power)) /\ exists ff_q_functional_left_candidate_power_product_factor. ff_b_functional_left_candidate_power = ff_q_functional_left_candidate_power_product_factor * S ((S (ff_i_functional_left_candidate_power_product)) * ff_c_functional_left_candidate_power) + (ff_p_functional_left_candidate_power_product))) /\ ((((exists ff_h_functional_left_candidate_power_product_partial. ff_h_functional_left_candidate_power_product_partial + S (ff_r_functional_left_candidate_power_product) = S ((S (ff_i_functional_left_candidate_power_product)) * ff_v_functional_left_candidate_power_product)) /\ exists ff_q_functional_left_candidate_power_product_partial. ff_u_functional_left_candidate_power_product = ff_q_functional_left_candidate_power_product_partial * S ((S (ff_i_functional_left_candidate_power_product)) * ff_v_functional_left_candidate_power_product) + (ff_r_functional_left_candidate_power_product))) /\ ((((exists ff_h_functional_left_candidate_power_product_successor. ff_h_functional_left_candidate_power_product_successor + S (ff_s_functional_left_candidate_power_product) = S ((S (S ff_i_functional_left_candidate_power_product)) * ff_v_functional_left_candidate_power_product)) /\ exists ff_q_functional_left_candidate_power_product_successor. ff_u_functional_left_candidate_power_product = ff_q_functional_left_candidate_power_product_successor * S ((S (S ff_i_functional_left_candidate_power_product)) * ff_v_functional_left_candidate_power_product) + (ff_s_functional_left_candidate_power_product))) /\ ff_s_functional_left_candidate_power_product = ff_r_functional_left_candidate_power_product * ff_p_functional_left_candidate_power_product)))))))) /\ (exists bpv_factor_functional_left_candidate_divides. a = bpv_result_functional_left_candidate * bpv_factor_functional_left_candidate_divides))) -> (exists bpv_gap_functional_left_maximal. bpv_gap_functional_left_maximal + bpv_candidate_functional_left = e)) -> (((exists bpv_gap_functional_right_exponent_bound. bpv_gap_functional_right_exponent_bound + f = a) /\ (exists bpv_result_functional_right_selected. ((exists ff_b_functional_right_selected_power ff_c_functional_right_selected_power. ((forall ff_i_functional_right_selected_power_repeat. (exists ff_lt_functional_right_selected_power_repeat_bound. ff_lt_functional_right_selected_power_repeat_bound + S ff_i_functional_right_selected_power_repeat = f) -> (((exists ff_h_functional_right_selected_power_repeat_decoded. ff_h_functional_right_selected_power_repeat_decoded + S (p) = S ((S (ff_i_functional_right_selected_power_repeat)) * ff_c_functional_right_selected_power)) /\ exists ff_q_functional_right_selected_power_repeat_decoded. ff_b_functional_right_selected_power = ff_q_functional_right_selected_power_repeat_decoded * S ((S (ff_i_functional_right_selected_power_repeat)) * ff_c_functional_right_selected_power) + (p)))) /\ (exists ff_u_functional_right_selected_power_product ff_v_functional_right_selected_power_product. ((((exists ff_h_functional_right_selected_power_product_start. ff_h_functional_right_selected_power_product_start + S (1) = S ((S (0)) * ff_v_functional_right_selected_power_product)) /\ exists ff_q_functional_right_selected_power_product_start. ff_u_functional_right_selected_power_product = ff_q_functional_right_selected_power_product_start * S ((S (0)) * ff_v_functional_right_selected_power_product) + (1))) /\ ((((exists ff_h_functional_right_selected_power_product_terminal. ff_h_functional_right_selected_power_product_terminal + S (bpv_result_functional_right_selected) = S ((S (f)) * ff_v_functional_right_selected_power_product)) /\ exists ff_q_functional_right_selected_power_product_terminal. ff_u_functional_right_selected_power_product = ff_q_functional_right_selected_power_product_terminal * S ((S (f)) * ff_v_functional_right_selected_power_product) + (bpv_result_functional_right_selected))) /\ forall ff_i_functional_right_selected_power_product. (exists ff_lt_functional_right_selected_power_product_bound. ff_lt_functional_right_selected_power_product_bound + S ff_i_functional_right_selected_power_product = f) -> exists ff_p_functional_right_selected_power_product ff_r_functional_right_selected_power_product ff_s_functional_right_selected_power_product. ((((exists ff_h_functional_right_selected_power_product_factor. ff_h_functional_right_selected_power_product_factor + S (ff_p_functional_right_selected_power_product) = S ((S (ff_i_functional_right_selected_power_product)) * ff_c_functional_right_selected_power)) /\ exists ff_q_functional_right_selected_power_product_factor. ff_b_functional_right_selected_power = ff_q_functional_right_selected_power_product_factor * S ((S (ff_i_functional_right_selected_power_product)) * ff_c_functional_right_selected_power) + (ff_p_functional_right_selected_power_product))) /\ ((((exists ff_h_functional_right_selected_power_product_partial. ff_h_functional_right_selected_power_product_partial + S (ff_r_functional_right_selected_power_product) = S ((S (ff_i_functional_right_selected_power_product)) * ff_v_functional_right_selected_power_product)) /\ exists ff_q_functional_right_selected_power_product_partial. ff_u_functional_right_selected_power_product = ff_q_functional_right_selected_power_product_partial * S ((S (ff_i_functional_right_selected_power_product)) * ff_v_functional_right_selected_power_product) + (ff_r_functional_right_selected_power_product))) /\ ((((exists ff_h_functional_right_selected_power_product_successor. ff_h_functional_right_selected_power_product_successor + S (ff_s_functional_right_selected_power_product) = S ((S (S ff_i_functional_right_selected_power_product)) * ff_v_functional_right_selected_power_product)) /\ exists ff_q_functional_right_selected_power_product_successor. ff_u_functional_right_selected_power_product = ff_q_functional_right_selected_power_product_successor * S ((S (S ff_i_functional_right_selected_power_product)) * ff_v_functional_right_selected_power_product) + (ff_s_functional_right_selected_power_product))) /\ ff_s_functional_right_selected_power_product = ff_r_functional_right_selected_power_product * ff_p_functional_right_selected_power_product)))))))) /\ (exists bpv_factor_functional_right_selected_divides. a = bpv_result_functional_right_selected * bpv_factor_functional_right_selected_divides)))) /\ forall bpv_candidate_functional_right. (exists bpv_gap_functional_right_candidate_bound. bpv_gap_functional_right_candidate_bound + bpv_candidate_functional_right = a) -> (exists bpv_result_functional_right_candidate. ((exists ff_b_functional_right_candidate_power ff_c_functional_right_candidate_power. ((forall ff_i_functional_right_candidate_power_repeat. (exists ff_lt_functional_right_candidate_power_repeat_bound. ff_lt_functional_right_candidate_power_repeat_bound + S ff_i_functional_right_candidate_power_repeat = bpv_candidate_functional_right) -> (((exists ff_h_functional_right_candidate_power_repeat_decoded. ff_h_functional_right_candidate_power_repeat_decoded + S (p) = S ((S (ff_i_functional_right_candidate_power_repeat)) * ff_c_functional_right_candidate_power)) /\ exists ff_q_functional_right_candidate_power_repeat_decoded. ff_b_functional_right_candidate_power = ff_q_functional_right_candidate_power_repeat_decoded * S ((S (ff_i_functional_right_candidate_power_repeat)) * ff_c_functional_right_candidate_power) + (p)))) /\ (exists ff_u_functional_right_candidate_power_product ff_v_functional_right_candidate_power_product. ((((exists ff_h_functional_right_candidate_power_product_start. ff_h_functional_right_candidate_power_product_start + S (1) = S ((S (0)) * ff_v_functional_right_candidate_power_product)) /\ exists ff_q_functional_right_candidate_power_product_start. ff_u_functional_right_candidate_power_product = ff_q_functional_right_candidate_power_product_start * S ((S (0)) * ff_v_functional_right_candidate_power_product) + (1))) /\ ((((exists ff_h_functional_right_candidate_power_product_terminal. ff_h_functional_right_candidate_power_product_terminal + S (bpv_result_functional_right_candidate) = S ((S (bpv_candidate_functional_right)) * ff_v_functional_right_candidate_power_product)) /\ exists ff_q_functional_right_candidate_power_product_terminal. ff_u_functional_right_candidate_power_product = ff_q_functional_right_candidate_power_product_terminal * S ((S (bpv_candidate_functional_right)) * ff_v_functional_right_candidate_power_product) + (bpv_result_functional_right_candidate))) /\ forall ff_i_functional_right_candidate_power_product. (exists ff_lt_functional_right_candidate_power_product_bound. ff_lt_functional_right_candidate_power_product_bound + S ff_i_functional_right_candidate_power_product = bpv_candidate_functional_right) -> exists ff_p_functional_right_candidate_power_product ff_r_functional_right_candidate_power_product ff_s_functional_right_candidate_power_product. ((((exists ff_h_functional_right_candidate_power_product_factor. ff_h_functional_right_candidate_power_product_factor + S (ff_p_functional_right_candidate_power_product) = S ((S (ff_i_functional_right_candidate_power_product)) * ff_c_functional_right_candidate_power)) /\ exists ff_q_functional_right_candidate_power_product_factor. ff_b_functional_right_candidate_power = ff_q_functional_right_candidate_power_product_factor * S ((S (ff_i_functional_right_candidate_power_product)) * ff_c_functional_right_candidate_power) + (ff_p_functional_right_candidate_power_product))) /\ ((((exists ff_h_functional_right_candidate_power_product_partial. ff_h_functional_right_candidate_power_product_partial + S (ff_r_functional_right_candidate_power_product) = S ((S (ff_i_functional_right_candidate_power_product)) * ff_v_functional_right_candidate_power_product)) /\ exists ff_q_functional_right_candidate_power_product_partial. ff_u_functional_right_candidate_power_product = ff_q_functional_right_candidate_power_product_partial * S ((S (ff_i_functional_right_candidate_power_product)) * ff_v_functional_right_candidate_power_product) + (ff_r_functional_right_candidate_power_product))) /\ ((((exists ff_h_functional_right_candidate_power_product_successor. ff_h_functional_right_candidate_power_product_successor + S (ff_s_functional_right_candidate_power_product) = S ((S (S ff_i_functional_right_candidate_power_product)) * ff_v_functional_right_candidate_power_product)) /\ exists ff_q_functional_right_candidate_power_product_successor. ff_u_functional_right_candidate_power_product = ff_q_functional_right_candidate_power_product_successor * S ((S (S ff_i_functional_right_candidate_power_product)) * ff_v_functional_right_candidate_power_product) + (ff_s_functional_right_candidate_power_product))) /\ ff_s_functional_right_candidate_power_product = ff_r_functional_right_candidate_power_product * ff_p_functional_right_candidate_power_product)))))))) /\ (exists bpv_factor_functional_right_candidate_divides. a = bpv_result_functional_right_candidate * bpv_factor_functional_right_candidate_divides))) -> (exists bpv_gap_functional_right_maximal. bpv_gap_functional_right_maximal + bpv_candidate_functional_right = f)) -> e = f

Structural proof guide

Canonical bounded power valuations have a unique exponent.

Direct prerequisites: le_antisymm. The authored body proceeds by case analysis (4), 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.

  1. 0001intro p
  2. 0002intro a
  3. 0003intro e
  4. 0004intro f
  5. 0005intro he
  6. 0006intro hf
  7. 0007cases he
  8. 0008cases he_left
  9. 0009cases hf
  10. 0010cases hf_left
  11. 0011have hef : e <= f
  12. 0012specialize hf_right e
  13. 0013apply hf_right
  14. 0014exact he_left_left
  15. 0015exact he_left_right
  16. 0016have hfe : f <= e
  17. 0017specialize he_right f
  18. 0018apply he_right
  19. 0019exact hf_left_left
  20. 0020exact hf_left_right
  21. 0021specialize le_antisymm e
  22. 0022specialize le_antisymm f
  23. 0023apply le_antisymm
  24. 0024exact hef
  25. 0025exact hfe