BT00XP

power_quotient_prefix_tail_entry_zero

Alpha body-checked ยท checked-use disabled

Every decoded quotient entry at or beyond the dividend is zero.

Exact expanded PA statement

forall p n b c l i. ((~(p = 1) /\ forall frm_prime_left_b5cvptez_prime frm_prime_right_b5cvptez_prime. p = frm_prime_left_b5cvptez_prime * frm_prime_right_b5cvptez_prime -> frm_prime_left_b5cvptez_prime = 1 \/ frm_prime_right_b5cvptez_prime = 1)) -> (forall bls_index_b5cvptez_prefix. (exists bls_gap_b5cvptez_prefix_bound. bls_gap_b5cvptez_prefix_bound + S (bls_index_b5cvptez_prefix) = (l)) -> exists bls_power_b5cvptez_prefix bls_quotient_b5cvptez_prefix bls_remainder_b5cvptez_prefix. ((exists bpvi_b_bls_b5cvptez_prefix_power bpvi_c_bls_b5cvptez_prefix_power. ((forall bpvi_i_bls_b5cvptez_prefix_power. (exists bpvi_repeat_gap_bls_b5cvptez_prefix_power. bpvi_repeat_gap_bls_b5cvptez_prefix_power + S bpvi_i_bls_b5cvptez_prefix_power = S bls_index_b5cvptez_prefix) -> (((exists bpvi_h_bls_b5cvptez_prefix_power_repeat. bpvi_h_bls_b5cvptez_prefix_power_repeat + S (p) = S ((S (bpvi_i_bls_b5cvptez_prefix_power)) * bpvi_c_bls_b5cvptez_prefix_power)) /\ exists bpvi_q_bls_b5cvptez_prefix_power_repeat. bpvi_b_bls_b5cvptez_prefix_power = bpvi_q_bls_b5cvptez_prefix_power_repeat * S ((S (bpvi_i_bls_b5cvptez_prefix_power)) * bpvi_c_bls_b5cvptez_prefix_power) + (p)))) /\ (exists bpvi_u_bls_b5cvptez_prefix_power bpvi_v_bls_b5cvptez_prefix_power. ((((exists bpvi_h_bls_b5cvptez_prefix_power_start. bpvi_h_bls_b5cvptez_prefix_power_start + S (1) = S ((S (0)) * bpvi_v_bls_b5cvptez_prefix_power)) /\ exists bpvi_q_bls_b5cvptez_prefix_power_start. bpvi_u_bls_b5cvptez_prefix_power = bpvi_q_bls_b5cvptez_prefix_power_start * S ((S (0)) * bpvi_v_bls_b5cvptez_prefix_power) + (1))) /\ ((((exists bpvi_h_bls_b5cvptez_prefix_power_terminal. bpvi_h_bls_b5cvptez_prefix_power_terminal + S (bls_power_b5cvptez_prefix) = S ((S (S bls_index_b5cvptez_prefix)) * bpvi_v_bls_b5cvptez_prefix_power)) /\ exists bpvi_q_bls_b5cvptez_prefix_power_terminal. bpvi_u_bls_b5cvptez_prefix_power = bpvi_q_bls_b5cvptez_prefix_power_terminal * S ((S (S bls_index_b5cvptez_prefix)) * bpvi_v_bls_b5cvptez_prefix_power) + (bls_power_b5cvptez_prefix))) /\ forall bpvi_j_bls_b5cvptez_prefix_power. (exists bpvi_product_gap_bls_b5cvptez_prefix_power. bpvi_product_gap_bls_b5cvptez_prefix_power + S bpvi_j_bls_b5cvptez_prefix_power = S bls_index_b5cvptez_prefix) -> exists bpvi_factor_bls_b5cvptez_prefix_power bpvi_partial_bls_b5cvptez_prefix_power bpvi_successor_bls_b5cvptez_prefix_power. ((((exists bpvi_h_bls_b5cvptez_prefix_power_factor. bpvi_h_bls_b5cvptez_prefix_power_factor + S (bpvi_factor_bls_b5cvptez_prefix_power) = S ((S (bpvi_j_bls_b5cvptez_prefix_power)) * bpvi_c_bls_b5cvptez_prefix_power)) /\ exists bpvi_q_bls_b5cvptez_prefix_power_factor. bpvi_b_bls_b5cvptez_prefix_power = bpvi_q_bls_b5cvptez_prefix_power_factor * S ((S (bpvi_j_bls_b5cvptez_prefix_power)) * bpvi_c_bls_b5cvptez_prefix_power) + (bpvi_factor_bls_b5cvptez_prefix_power))) /\ ((((exists bpvi_h_bls_b5cvptez_prefix_power_partial. bpvi_h_bls_b5cvptez_prefix_power_partial + S (bpvi_partial_bls_b5cvptez_prefix_power) = S ((S (bpvi_j_bls_b5cvptez_prefix_power)) * bpvi_v_bls_b5cvptez_prefix_power)) /\ exists bpvi_q_bls_b5cvptez_prefix_power_partial. bpvi_u_bls_b5cvptez_prefix_power = bpvi_q_bls_b5cvptez_prefix_power_partial * S ((S (bpvi_j_bls_b5cvptez_prefix_power)) * bpvi_v_bls_b5cvptez_prefix_power) + (bpvi_partial_bls_b5cvptez_prefix_power))) /\ ((((exists bpvi_h_bls_b5cvptez_prefix_power_successor. bpvi_h_bls_b5cvptez_prefix_power_successor + S (bpvi_successor_bls_b5cvptez_prefix_power) = S ((S (S bpvi_j_bls_b5cvptez_prefix_power)) * bpvi_v_bls_b5cvptez_prefix_power)) /\ exists bpvi_q_bls_b5cvptez_prefix_power_successor. bpvi_u_bls_b5cvptez_prefix_power = bpvi_q_bls_b5cvptez_prefix_power_successor * S ((S (S bpvi_j_bls_b5cvptez_prefix_power)) * bpvi_v_bls_b5cvptez_prefix_power) + (bpvi_successor_bls_b5cvptez_prefix_power))) /\ bpvi_successor_bls_b5cvptez_prefix_power = bpvi_partial_bls_b5cvptez_prefix_power * bpvi_factor_bls_b5cvptez_prefix_power)))))))) /\ ((((exists ff_h_bls_b5cvptez_prefix_quotient_entry. ff_h_bls_b5cvptez_prefix_quotient_entry + S (bls_quotient_b5cvptez_prefix) = S ((S (bls_index_b5cvptez_prefix)) * c)) /\ exists ff_q_bls_b5cvptez_prefix_quotient_entry. b = ff_q_bls_b5cvptez_prefix_quotient_entry * S ((S (bls_index_b5cvptez_prefix)) * c) + (bls_quotient_b5cvptez_prefix))) /\ ((n = bls_power_b5cvptez_prefix * bls_quotient_b5cvptez_prefix + bls_remainder_b5cvptez_prefix /\ exists bls_remainder_gap_b5cvptez_prefix_division. bls_remainder_gap_b5cvptez_prefix_division + S (bls_remainder_b5cvptez_prefix) = bls_power_b5cvptez_prefix))))) -> (exists bcf_le_gap_b5cvptez_start. bcf_le_gap_b5cvptez_start + (n) = i) -> (exists bcf_lt_gap_b5cvptez_bound. bcf_lt_gap_b5cvptez_bound + S (i) = l) -> (((exists fs_h_b5cvptez_result. fs_h_b5cvptez_result + S (0) = S ((S (i)) * c)) /\ exists fs_q_b5cvptez_result. b = fs_q_b5cvptez_result * S ((S (i)) * c) + (0)))

Structural proof guide

Every decoded quotient entry at or beyond the dividend is zero.

Direct prerequisites: prime_power_quotient_zero_of_exponent_gt. The authored body proceeds by case analysis (6), intermediate claims (3), equality transport (3).

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 n
  3. 0003intro b
  4. 0004intro c
  5. 0005intro l
  6. 0006intro i
  7. 0007intro hp
  8. 0008intro hprefix
  9. 0009intro hstart
  10. 0010intro hibound
  11. 0011have hdata : exists d q r. (exists bpvi_b_b5cvptez_data_power bpvi_c_b5cvptez_data_power. ((forall bpvi_i_b5cvptez_data_power. (exists bpvi_repeat_gap_b5cvptez_data_power. bpvi_repeat_gap_b5cvptez_data_power + S bpvi_i_b5cvptez_data_power = S i) -> (((exists bpvi_h_b5cvptez_data_power_repeat. bpvi_h_b5cvptez_data_power_repeat + S (p) = S ((S (bpvi_i_b5cvptez_data_power)) * bpvi_c_b5cvptez_data_power)) /\ exists bpvi_q_b5cvptez_data_power_repeat. bpvi_b_b5cvptez_data_power = bpvi_q_b5cvptez_data_power_repeat * S ((S (bpvi_i_b5cvptez_data_power)) * bpvi_c_b5cvptez_data_power) + (p)))) /\ (exists bpvi_u_b5cvptez_data_power bpvi_v_b5cvptez_data_power. ((((exists bpvi_h_b5cvptez_data_power_start. bpvi_h_b5cvptez_data_power_start + S (1) = S ((S (0)) * bpvi_v_b5cvptez_data_power)) /\ exists bpvi_q_b5cvptez_data_power_start. bpvi_u_b5cvptez_data_power = bpvi_q_b5cvptez_data_power_start * S ((S (0)) * bpvi_v_b5cvptez_data_power) + (1))) /\ ((((exists bpvi_h_b5cvptez_data_power_terminal. bpvi_h_b5cvptez_data_power_terminal + S (d) = S ((S (S i)) * bpvi_v_b5cvptez_data_power)) /\ exists bpvi_q_b5cvptez_data_power_terminal. bpvi_u_b5cvptez_data_power = bpvi_q_b5cvptez_data_power_terminal * S ((S (S i)) * bpvi_v_b5cvptez_data_power) + (d))) /\ forall bpvi_j_b5cvptez_data_power. (exists bpvi_product_gap_b5cvptez_data_power. bpvi_product_gap_b5cvptez_data_power + S bpvi_j_b5cvptez_data_power = S i) -> exists bpvi_factor_b5cvptez_data_power bpvi_partial_b5cvptez_data_power bpvi_successor_b5cvptez_data_power. ((((exists bpvi_h_b5cvptez_data_power_factor. bpvi_h_b5cvptez_data_power_factor + S (bpvi_factor_b5cvptez_data_power) = S ((S (bpvi_j_b5cvptez_data_power)) * bpvi_c_b5cvptez_data_power)) /\ exists bpvi_q_b5cvptez_data_power_factor. bpvi_b_b5cvptez_data_power = bpvi_q_b5cvptez_data_power_factor * S ((S (bpvi_j_b5cvptez_data_power)) * bpvi_c_b5cvptez_data_power) + (bpvi_factor_b5cvptez_data_power))) /\ ((((exists bpvi_h_b5cvptez_data_power_partial. bpvi_h_b5cvptez_data_power_partial + S (bpvi_partial_b5cvptez_data_power) = S ((S (bpvi_j_b5cvptez_data_power)) * bpvi_v_b5cvptez_data_power)) /\ exists bpvi_q_b5cvptez_data_power_partial. bpvi_u_b5cvptez_data_power = bpvi_q_b5cvptez_data_power_partial * S ((S (bpvi_j_b5cvptez_data_power)) * bpvi_v_b5cvptez_data_power) + (bpvi_partial_b5cvptez_data_power))) /\ ((((exists bpvi_h_b5cvptez_data_power_successor. bpvi_h_b5cvptez_data_power_successor + S (bpvi_successor_b5cvptez_data_power) = S ((S (S bpvi_j_b5cvptez_data_power)) * bpvi_v_b5cvptez_data_power)) /\ exists bpvi_q_b5cvptez_data_power_successor. bpvi_u_b5cvptez_data_power = bpvi_q_b5cvptez_data_power_successor * S ((S (S bpvi_j_b5cvptez_data_power)) * bpvi_v_b5cvptez_data_power) + (bpvi_successor_b5cvptez_data_power))) /\ bpvi_successor_b5cvptez_data_power = bpvi_partial_b5cvptez_data_power * bpvi_factor_b5cvptez_data_power)))))))) /\ ((((exists fs_h_b5cvptez_data_entry. fs_h_b5cvptez_data_entry + S (q) = S ((S (i)) * c)) /\ exists fs_q_b5cvptez_data_entry. b = fs_q_b5cvptez_data_entry * S ((S (i)) * c) + (q))) /\ (((n) = (d) * (q) + (r) /\ (exists bcf_lt_gap_b5cvptez_data_division_bound. bcf_lt_gap_b5cvptez_data_division_bound + S (r) = d))))
  12. 0012specialize hprefix i
  13. 0013apply hprefix
  14. 0014exact hibound
  15. 0015cases hdata
  16. 0016cases hdata_witness
  17. 0017cases hdata_witness_witness
  18. 0018cases hdata_witness_witness_witness
  19. 0019cases hdata_witness_witness_witness_right
  20. 0020have hexponent : exists g. g + S n = S i
  21. 0021cases hstart
  22. 0022exists x3
  23. 0023rewrite PA4
  24. 0024congr
  25. 0025exact hstart_witness
  26. 0026have hzero : x1 = 0
  27. 0027specialize prime_power_quotient_zero_of_exponent_gt p
  28. 0028specialize prime_power_quotient_zero_of_exponent_gt n
  29. 0029specialize prime_power_quotient_zero_of_exponent_gt (S i)
  30. 0030specialize prime_power_quotient_zero_of_exponent_gt x
  31. 0031specialize prime_power_quotient_zero_of_exponent_gt x1
  32. 0032specialize prime_power_quotient_zero_of_exponent_gt x2
  33. 0033apply prime_power_quotient_zero_of_exponent_gt
  34. 0034exact hp
  35. 0035exact hexponent
  36. 0036exact hdata_witness_witness_witness_left
  37. 0037exact hdata_witness_witness_witness_right_right
  38. 0038rewrite <- hzero
  39. 0039rewrite <- hzero
  40. 0040exact hdata_witness_witness_witness_right_left