BT00YH

floor_sqrt_above_root_power_two_strict

Alpha body-checked ยท checked-use disabled

A prime above a floor root has square strictly above the value.

Exact expanded PA statement

forall x s p t. (((exists bcs_sqrt_lower_gap_bfsarpts_source. bcs_sqrt_lower_gap_bfsarpts_source + (s) * (s) = (x)) /\ exists bcs_sqrt_upper_gap_bfsarpts_source. bcs_sqrt_upper_gap_bfsarpts_source + S (x) = S (s) * S (s))) -> (exists bcf_lt_gap_bfsarpts_above. bcf_lt_gap_bfsarpts_above + S (s) = p) -> (exists bpvi_b_bfsarpts_power bpvi_c_bfsarpts_power. ((forall bpvi_i_bfsarpts_power. (exists bpvi_repeat_gap_bfsarpts_power. bpvi_repeat_gap_bfsarpts_power + S bpvi_i_bfsarpts_power = 2) -> (((exists bpvi_h_bfsarpts_power_repeat. bpvi_h_bfsarpts_power_repeat + S (p) = S ((S (bpvi_i_bfsarpts_power)) * bpvi_c_bfsarpts_power)) /\ exists bpvi_q_bfsarpts_power_repeat. bpvi_b_bfsarpts_power = bpvi_q_bfsarpts_power_repeat * S ((S (bpvi_i_bfsarpts_power)) * bpvi_c_bfsarpts_power) + (p)))) /\ (exists bpvi_u_bfsarpts_power bpvi_v_bfsarpts_power. ((((exists bpvi_h_bfsarpts_power_start. bpvi_h_bfsarpts_power_start + S (1) = S ((S (0)) * bpvi_v_bfsarpts_power)) /\ exists bpvi_q_bfsarpts_power_start. bpvi_u_bfsarpts_power = bpvi_q_bfsarpts_power_start * S ((S (0)) * bpvi_v_bfsarpts_power) + (1))) /\ ((((exists bpvi_h_bfsarpts_power_terminal. bpvi_h_bfsarpts_power_terminal + S (t) = S ((S (2)) * bpvi_v_bfsarpts_power)) /\ exists bpvi_q_bfsarpts_power_terminal. bpvi_u_bfsarpts_power = bpvi_q_bfsarpts_power_terminal * S ((S (2)) * bpvi_v_bfsarpts_power) + (t))) /\ forall bpvi_j_bfsarpts_power. (exists bpvi_product_gap_bfsarpts_power. bpvi_product_gap_bfsarpts_power + S bpvi_j_bfsarpts_power = 2) -> exists bpvi_factor_bfsarpts_power bpvi_partial_bfsarpts_power bpvi_successor_bfsarpts_power. ((((exists bpvi_h_bfsarpts_power_factor. bpvi_h_bfsarpts_power_factor + S (bpvi_factor_bfsarpts_power) = S ((S (bpvi_j_bfsarpts_power)) * bpvi_c_bfsarpts_power)) /\ exists bpvi_q_bfsarpts_power_factor. bpvi_b_bfsarpts_power = bpvi_q_bfsarpts_power_factor * S ((S (bpvi_j_bfsarpts_power)) * bpvi_c_bfsarpts_power) + (bpvi_factor_bfsarpts_power))) /\ ((((exists bpvi_h_bfsarpts_power_partial. bpvi_h_bfsarpts_power_partial + S (bpvi_partial_bfsarpts_power) = S ((S (bpvi_j_bfsarpts_power)) * bpvi_v_bfsarpts_power)) /\ exists bpvi_q_bfsarpts_power_partial. bpvi_u_bfsarpts_power = bpvi_q_bfsarpts_power_partial * S ((S (bpvi_j_bfsarpts_power)) * bpvi_v_bfsarpts_power) + (bpvi_partial_bfsarpts_power))) /\ ((((exists bpvi_h_bfsarpts_power_successor. bpvi_h_bfsarpts_power_successor + S (bpvi_successor_bfsarpts_power) = S ((S (S bpvi_j_bfsarpts_power)) * bpvi_v_bfsarpts_power)) /\ exists bpvi_q_bfsarpts_power_successor. bpvi_u_bfsarpts_power = bpvi_q_bfsarpts_power_successor * S ((S (S bpvi_j_bfsarpts_power)) * bpvi_v_bfsarpts_power) + (bpvi_successor_bfsarpts_power))) /\ bpvi_successor_bfsarpts_power = bpvi_partial_bfsarpts_power * bpvi_factor_bfsarpts_power)))))))) -> (exists bcf_lt_gap_bfsarpts_result. bcf_lt_gap_bfsarpts_result + S (x) = t)

Structural proof guide

A prime above a floor root has square strictly above the value.

Direct prerequisites: mul_le_mul_right, mul_le_mul_left, le_trans, lt_of_lt_of_le, pow_two. The authored body proceeds by case analysis (1), intermediate claims (5), equality transport (1).

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 x
  2. 0002intro s
  3. 0003intro p
  4. 0004intro t
  5. 0005intro hfloor
  6. 0006intro habove
  7. 0007intro hpower
  8. 0008cases hfloor
  9. 0009have hfirst : exists bcf_le_gap_bfsarpts_first. bcf_le_gap_bfsarpts_first + (S s * S s) = p * S s
  10. 0010specialize mul_le_mul_right (S s)
  11. 0011specialize mul_le_mul_right p
  12. 0012specialize mul_le_mul_right (S s)
  13. 0013apply mul_le_mul_right
  14. 0014exact habove
  15. 0015have hsecond : exists bcf_le_gap_bfsarpts_second. bcf_le_gap_bfsarpts_second + (p * S s) = p * p
  16. 0016specialize mul_le_mul_left (S s)
  17. 0017specialize mul_le_mul_left p
  18. 0018specialize mul_le_mul_left p
  19. 0019apply mul_le_mul_left
  20. 0020exact habove
  21. 0021have hsquare : exists bcf_le_gap_bfsarpts_square. bcf_le_gap_bfsarpts_square + (S s * S s) = p * p
  22. 0022specialize le_trans (S s * S s)
  23. 0023specialize le_trans (p * S s)
  24. 0024specialize le_trans (p * p)
  25. 0025apply le_trans
  26. 0026exact hfirst
  27. 0027exact hsecond
  28. 0028have hraw : exists bcf_lt_gap_bfsarpts_raw_result. bcf_lt_gap_bfsarpts_raw_result + S (x) = p * p
  29. 0029specialize lt_of_lt_of_le x
  30. 0030specialize lt_of_lt_of_le (S s * S s)
  31. 0031specialize lt_of_lt_of_le (p * p)
  32. 0032apply lt_of_lt_of_le
  33. 0033exact hfloor_right
  34. 0034exact hsquare
  35. 0035have hvalue : t = p * p
  36. 0036specialize pow_two p
  37. 0037specialize pow_two 2
  38. 0038specialize pow_two t
  39. 0039apply pow_two
  40. 0040refl
  41. 0041exact hpower
  42. 0042rewrite hvalue
  43. 0043exact hraw