PX003B

prime_field_polynomial_division_exists_with_remainder_bound

Unconditionally construct an actual general division execution and derive its strict remainder-degree alternative; no theorem claims degree for zero.

Alpha v34 checked-use · first admitted v33 · independently kernel and Lean verified; not Stable

Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.

Coefficients are highest-degree-first. The divisor has a nonzero decoded head; primality supplies its actual inverse. Empty quotients and remainders are included. Functionality compares the constructed execution lengths and decoded coefficients, never arbitrary beta codes. Formal polynomial equivalence compares every coefficient, not evaluations on a finite field. The formal identity and remainder-degree bound are proved separately, not assumed by the execution graph. Arbitrary quotient/remainder-pair uniqueness from a formal identity, multiplication associativity, gcd/Bezout, irreducible-polynomial existence, and the full G091 prime-power-field goal remain open. The seven displayed new names are conservative first-order notation, not new kernel primitives.

Exact theorem in conservative defined notation

∀ p. ∀ ab. ∀ ac. ∀ L. ∀ bb. ∀ bc. ∀ d. Prime(p)BetaPrefixInto(ab,ac,L,p)FpRepresentedDegree(p,bb,bc,S d,d) → ∃ x. ∃ y. ∃ z. ∃ n. ∃ m. ∃ k. FpPolynomialDivisionExecution(p,ab,ac,L,bb,bc,d,x,y,z,n,m,k) ∧ (k = 0 ∨ (∃ i. FpRepresentedDegree(p,n,m,k,i)Lt(i,d)))

Every linked abbreviation expands hygienically to the identical original native formula.

Definition DAG

Actual proof prerequisites

Original expanded first-order statement
forall p ab ac L bb bc d. (~((p) = 1) /\ forall pfa_factor_left_division_bounded_prime pfa_factor_right_division_bounded_prime. (p) = pfa_factor_left_division_bounded_prime * pfa_factor_right_division_bounded_prime -> pfa_factor_left_division_bounded_prime = 1 \/ pfa_factor_right_division_bounded_prime = 1) -> (forall fom_index_pfp_division_bounded_input. (exists fom_gap_pfp_division_bounded_input_index_bound. fom_gap_pfp_division_bounded_input_index_bound + S (fom_index_pfp_division_bounded_input) = L) -> exists fom_value_pfp_division_bounded_input. ((((exists fom_beta_height_pfp_division_bounded_input_entry. fom_beta_height_pfp_division_bounded_input_entry + S (fom_value_pfp_division_bounded_input) = S ((S (fom_index_pfp_division_bounded_input)) * ac)) /\ exists fom_beta_quotient_pfp_division_bounded_input_entry. ab = fom_beta_quotient_pfp_division_bounded_input_entry * S ((S (fom_index_pfp_division_bounded_input)) * ac) + (fom_value_pfp_division_bounded_input))) /\ (exists fom_gap_pfp_division_bounded_input_value_bound. fom_gap_pfp_division_bounded_input_value_bound + S (fom_value_pfp_division_bounded_input) = p))) -> ((((S d)=S (d)) /\ (((forall fom_index_pfp_division_bounded_divisorcoefficients. (exists fom_gap_pfp_division_bounded_divisorcoefficients_index_bound. fom_gap_pfp_division_bounded_divisorcoefficients_index_bound + S (fom_index_pfp_division_bounded_divisorcoefficients) = S d) -> exists fom_value_pfp_division_bounded_divisorcoefficients. ((((exists fom_beta_height_pfp_division_bounded_divisorcoefficients_entry. fom_beta_height_pfp_division_bounded_divisorcoefficients_entry + S (fom_value_pfp_division_bounded_divisorcoefficients) = S ((S (fom_index_pfp_division_bounded_divisorcoefficients)) * bc)) /\ exists fom_beta_quotient_pfp_division_bounded_divisorcoefficients_entry. bb = fom_beta_quotient_pfp_division_bounded_divisorcoefficients_entry * S ((S (fom_index_pfp_division_bounded_divisorcoefficients)) * bc) + (fom_value_pfp_division_bounded_divisorcoefficients))) /\ (exists fom_gap_pfp_division_bounded_divisorcoefficients_value_bound. fom_gap_pfp_division_bounded_divisorcoefficients_value_bound + S (fom_value_pfp_division_bounded_divisorcoefficients) = p))) /\ ((exists pfd_leading_division_bounded_divisor. ((((exists ff_h_pfp_division_bounded_divisorentry. ff_h_pfp_division_bounded_divisorentry + S (pfd_leading_division_bounded_divisor) = S ((S (0)) * bc)) /\ exists ff_q_pfp_division_bounded_divisorentry. bb = ff_q_pfp_division_bounded_divisorentry * S ((S (0)) * bc) + (pfd_leading_division_bounded_divisor))) /\ ((~(pfd_leading_division_bounded_divisor=0)))))))))) -> exists qb qc q rb rc R. ((((forall fom_index_pfp_division_bounded_executioninput. (exists fom_gap_pfp_division_bounded_executioninput_index_bound. fom_gap_pfp_division_bounded_executioninput_index_bound + S (fom_index_pfp_division_bounded_executioninput) = L) -> exists fom_value_pfp_division_bounded_executioninput. ((((exists fom_beta_height_pfp_division_bounded_executioninput_entry. fom_beta_height_pfp_division_bounded_executioninput_entry + S (fom_value_pfp_division_bounded_executioninput) = S ((S (fom_index_pfp_division_bounded_executioninput)) * ac)) /\ exists fom_beta_quotient_pfp_division_bounded_executioninput_entry. ab = fom_beta_quotient_pfp_division_bounded_executioninput_entry * S ((S (fom_index_pfp_division_bounded_executioninput)) * ac) + (fom_value_pfp_division_bounded_executioninput))) /\ (exists fom_gap_pfp_division_bounded_executioninput_value_bound. fom_gap_pfp_division_bounded_executioninput_value_bound + S (fom_value_pfp_division_bounded_executioninput) = p))) /\ (((forall fom_index_pfp_division_bounded_executiondivisor. (exists fom_gap_pfp_division_bounded_executiondivisor_index_bound. fom_gap_pfp_division_bounded_executiondivisor_index_bound + S (fom_index_pfp_division_bounded_executiondivisor) = S (d)) -> exists fom_value_pfp_division_bounded_executiondivisor. ((((exists fom_beta_height_pfp_division_bounded_executiondivisor_entry. fom_beta_height_pfp_division_bounded_executiondivisor_entry + S (fom_value_pfp_division_bounded_executiondivisor) = S ((S (fom_index_pfp_division_bounded_executiondivisor)) * bc)) /\ exists fom_beta_quotient_pfp_division_bounded_executiondivisor_entry. bb = fom_beta_quotient_pfp_division_bounded_executiondivisor_entry * S ((S (fom_index_pfp_division_bounded_executiondivisor)) * bc) + (fom_value_pfp_division_bounded_executiondivisor))) /\ (exists fom_gap_pfp_division_bounded_executiondivisor_value_bound. fom_gap_pfp_division_bounded_executiondivisor_value_bound + S (fom_value_pfp_division_bounded_executiondivisor) = p))) /\ (((((((q)=0) /\ ((exists pfc_gap_division_bounded_executionlengthshort. pfc_gap_division_bounded_executionlengthshort+(L)=(d))))) \/ (((~((q)=0)) /\ (((q)+(d)=(L)))))) /\ ((exists pfd_head_division_bounded_execution pfd_inverse_division_bounded_execution pfd_product_code_division_bounded_execution pfd_product_scale_division_bounded_execution pfd_residual_code_division_bounded_execution pfd_residual_scale_division_bounded_execution pfd_cut_division_bounded_execution. ((((exists ff_h_pfp_division_bounded_executionhead. ff_h_pfp_division_bounded_executionhead + S (pfd_head_division_bounded_execution) = S ((S (0)) * bc)) /\ exists ff_q_pfp_division_bounded_executionhead. bb = ff_q_pfp_division_bounded_executionhead * S ((S (0)) * bc) + (pfd_head_division_bounded_execution))) /\ (((((~((pfd_head_division_bounded_execution) = 0)) /\ ((((exists pfa_gap_division_bounded_executioninversemultiplicationleft. pfa_gap_division_bounded_executioninversemultiplicationleft + S (pfd_head_division_bounded_execution) = (p)) /\ (((exists pfa_gap_division_bounded_executioninversemultiplicationright. pfa_gap_division_bounded_executioninversemultiplicationright + S (pfd_inverse_division_bounded_execution) = (p)) /\ ((((exists pfa_gap_division_bounded_executioninversemultiplicationresultbound. pfa_gap_division_bounded_executioninversemultiplicationresultbound + S (1) = (p)) /\ ((exists pfa_offset_left_division_bounded_executioninversemultiplicationresultcongruence pfa_offset_right_division_bounded_executioninversemultiplicationresultcongruence. ((pfd_head_division_bounded_execution) * (pfd_inverse_division_bounded_execution)) + (p) * pfa_offset_left_division_bounded_executioninversemultiplicationresultcongruence = (1) + (p) * pfa_offset_right_division_bounded_executioninversemultiplicationresultcongruence)))))))))))) /\ (((forall pfd_index_division_bounded_executionquotient. (exists pfa_gap_division_bounded_executionquotientbound. pfa_gap_division_bounded_executionquotientbound + S (pfd_index_division_bounded_executionquotient) = (q)) -> exists pfd_value_division_bounded_executionquotient. ((((exists ff_h_pfp_division_bounded_executionquotiententry. ff_h_pfp_division_bounded_executionquotiententry + S (pfd_value_division_bounded_executionquotient) = S ((S (pfd_index_division_bounded_executionquotient)) * qc)) /\ exists ff_q_pfp_division_bounded_executionquotiententry. qb = ff_q_pfp_division_bounded_executionquotiententry * S ((S (pfd_index_division_bounded_executionquotient)) * qc) + (pfd_value_division_bounded_executionquotient))) /\ ((exists pfd_input_division_bounded_executionquotientstep pfd_previous_division_bounded_executionquotientstep pfd_difference_division_bounded_executionquotientstep. ((((exists ff_h_pfp_division_bounded_executionquotientstepinput. ff_h_pfp_division_bounded_executionquotientstepinput + S (pfd_input_division_bounded_executionquotientstep) = S ((S (pfd_index_division_bounded_executionquotient)) * ac)) /\ exists ff_q_pfp_division_bounded_executionquotientstepinput. ab = ff_q_pfp_division_bounded_executionquotientstepinput * S ((S (pfd_index_division_bounded_executionquotient)) * ac) + (pfd_input_division_bounded_executionquotientstep))) /\ (((exists pfc_terms_code_division_bounded_executionquotientstepprevious pfc_terms_scale_division_bounded_executionquotientstepprevious pfc_natural_sum_division_bounded_executionquotientstepprevious. ((forall pfc_index_division_bounded_executionquotientsteppreviousdiagonal. (exists pfa_gap_division_bounded_executionquotientsteppreviousdiagonalbound. pfa_gap_division_bounded_executionquotientsteppreviousdiagonalbound + S (pfc_index_division_bounded_executionquotientsteppreviousdiagonal) = (S (pfd_index_division_bounded_executionquotient))) -> exists pfc_value_division_bounded_executionquotientsteppreviousdiagonal. ((((exists ff_h_pfp_division_bounded_executionquotientsteppreviousdiagonalentry. ff_h_pfp_division_bounded_executionquotientsteppreviousdiagonalentry + S (pfc_value_division_bounded_executionquotientsteppreviousdiagonal) = S ((S (pfc_index_division_bounded_executionquotientsteppreviousdiagonal)) * pfc_terms_scale_division_bounded_executionquotientstepprevious)) /\ exists ff_q_pfp_division_bounded_executionquotientsteppreviousdiagonalentry. pfc_terms_code_division_bounded_executionquotientstepprevious = ff_q_pfp_division_bounded_executionquotientsteppreviousdiagonalentry * S ((S (pfc_index_division_bounded_executionquotientsteppreviousdiagonal)) * pfc_terms_scale_division_bounded_executionquotientstepprevious) + (pfc_value_division_bounded_executionquotientsteppreviousdiagonal))) /\ ((exists pfc_complement_division_bounded_executionquotientsteppreviousdiagonalterm pfc_left_division_bounded_executionquotientsteppreviousdiagonalterm pfc_right_division_bounded_executionquotientsteppreviousdiagonalterm. (((pfc_index_division_bounded_executionquotientsteppreviousdiagonal)+pfc_complement_division_bounded_executionquotientsteppreviousdiagonalterm=(pfd_index_division_bounded_executionquotient)) /\ ((((((exists pfa_gap_division_bounded_executionquotientsteppreviousdiagonaltermleftinside. pfa_gap_division_bounded_executionquotientsteppreviousdiagonaltermleftinside + S (pfc_index_division_bounded_executionquotientsteppreviousdiagonal) = (pfd_index_division_bounded_executionquotient)) /\ ((((exists ff_h_pfp_division_bounded_executionquotientsteppreviousdiagonaltermleftentry. ff_h_pfp_division_bounded_executionquotientsteppreviousdiagonaltermleftentry + S (pfc_left_division_bounded_executionquotientsteppreviousdiagonalterm) = S ((S (pfc_index_division_bounded_executionquotientsteppreviousdiagonal)) * qc)) /\ exists ff_q_pfp_division_bounded_executionquotientsteppreviousdiagonaltermleftentry. qb = ff_q_pfp_division_bounded_executionquotientsteppreviousdiagonaltermleftentry * S ((S (pfc_index_division_bounded_executionquotientsteppreviousdiagonal)) * qc) + (pfc_left_division_bounded_executionquotientsteppreviousdiagonalterm)))))) \/ (((exists pfc_gap_division_bounded_executionquotientsteppreviousdiagonaltermleftoutside. pfc_gap_division_bounded_executionquotientsteppreviousdiagonaltermleftoutside+(pfd_index_division_bounded_executionquotient)=(pfc_index_division_bounded_executionquotientsteppreviousdiagonal)) /\ (((pfc_left_division_bounded_executionquotientsteppreviousdiagonalterm)=0))))) /\ ((((((exists pfa_gap_division_bounded_executionquotientsteppreviousdiagonaltermrightinside. pfa_gap_division_bounded_executionquotientsteppreviousdiagonaltermrightinside + S (pfc_complement_division_bounded_executionquotientsteppreviousdiagonalterm) = (S (d))) /\ ((((exists ff_h_pfp_division_bounded_executionquotientsteppreviousdiagonaltermrightentry. ff_h_pfp_division_bounded_executionquotientsteppreviousdiagonaltermrightentry + S (pfc_right_division_bounded_executionquotientsteppreviousdiagonalterm) = S ((S (pfc_complement_division_bounded_executionquotientsteppreviousdiagonalterm)) * bc)) /\ exists ff_q_pfp_division_bounded_executionquotientsteppreviousdiagonaltermrightentry. bb = ff_q_pfp_division_bounded_executionquotientsteppreviousdiagonaltermrightentry * S ((S (pfc_complement_division_bounded_executionquotientsteppreviousdiagonalterm)) * bc) + (pfc_right_division_bounded_executionquotientsteppreviousdiagonalterm)))))) \/ (((exists pfc_gap_division_bounded_executionquotientsteppreviousdiagonaltermrightoutside. pfc_gap_division_bounded_executionquotientsteppreviousdiagonaltermrightoutside+(S (d))=(pfc_complement_division_bounded_executionquotientsteppreviousdiagonalterm)) /\ (((pfc_right_division_bounded_executionquotientsteppreviousdiagonalterm)=0))))) /\ (((pfc_value_division_bounded_executionquotientsteppreviousdiagonal)=pfc_left_division_bounded_executionquotientsteppreviousdiagonalterm*pfc_right_division_bounded_executionquotientsteppreviousdiagonalterm))))))))))) /\ (((exists fs_u_pfc_division_bounded_executionquotientstepprevioussum fs_v_pfc_division_bounded_executionquotientstepprevioussum. ((((exists fs_h_pfc_division_bounded_executionquotientstepprevioussum_body_start. fs_h_pfc_division_bounded_executionquotientstepprevioussum_body_start + S (0) = S ((S (0)) * fs_v_pfc_division_bounded_executionquotientstepprevioussum)) /\ exists fs_q_pfc_division_bounded_executionquotientstepprevioussum_body_start. fs_u_pfc_division_bounded_executionquotientstepprevioussum = fs_q_pfc_division_bounded_executionquotientstepprevioussum_body_start * S ((S (0)) * fs_v_pfc_division_bounded_executionquotientstepprevioussum) + (0))) /\ ((((exists fs_h_pfc_division_bounded_executionquotientstepprevioussum_body_terminal. fs_h_pfc_division_bounded_executionquotientstepprevioussum_body_terminal + S (pfc_natural_sum_division_bounded_executionquotientstepprevious) = S ((S (S (pfd_index_division_bounded_executionquotient))) * fs_v_pfc_division_bounded_executionquotientstepprevioussum)) /\ exists fs_q_pfc_division_bounded_executionquotientstepprevioussum_body_terminal. fs_u_pfc_division_bounded_executionquotientstepprevioussum = fs_q_pfc_division_bounded_executionquotientstepprevioussum_body_terminal * S ((S (S (pfd_index_division_bounded_executionquotient))) * fs_v_pfc_division_bounded_executionquotientstepprevioussum) + (pfc_natural_sum_division_bounded_executionquotientstepprevious))) /\ forall fs_i_pfc_division_bounded_executionquotientstepprevioussum_body_steps. (exists fs_lt_pfc_division_bounded_executionquotientstepprevioussum_body_steps_bound. fs_lt_pfc_division_bounded_executionquotientstepprevioussum_body_steps_bound + S fs_i_pfc_division_bounded_executionquotientstepprevioussum_body_steps = S (pfd_index_division_bounded_executionquotient)) -> exists fs_a_pfc_division_bounded_executionquotientstepprevioussum_body_steps fs_r_pfc_division_bounded_executionquotientstepprevioussum_body_steps fs_s_pfc_division_bounded_executionquotientstepprevioussum_body_steps. ((((exists fs_h_pfc_division_bounded_executionquotientstepprevioussum_body_steps_summand. fs_h_pfc_division_bounded_executionquotientstepprevioussum_body_steps_summand + S (fs_a_pfc_division_bounded_executionquotientstepprevioussum_body_steps) = S ((S (fs_i_pfc_division_bounded_executionquotientstepprevioussum_body_steps)) * pfc_terms_scale_division_bounded_executionquotientstepprevious)) /\ exists fs_q_pfc_division_bounded_executionquotientstepprevioussum_body_steps_summand. pfc_terms_code_division_bounded_executionquotientstepprevious = fs_q_pfc_division_bounded_executionquotientstepprevioussum_body_steps_summand * S ((S (fs_i_pfc_division_bounded_executionquotientstepprevioussum_body_steps)) * pfc_terms_scale_division_bounded_executionquotientstepprevious) + (fs_a_pfc_division_bounded_executionquotientstepprevioussum_body_steps))) /\ ((((exists fs_h_pfc_division_bounded_executionquotientstepprevioussum_body_steps_partial. fs_h_pfc_division_bounded_executionquotientstepprevioussum_body_steps_partial + S (fs_r_pfc_division_bounded_executionquotientstepprevioussum_body_steps) = S ((S (fs_i_pfc_division_bounded_executionquotientstepprevioussum_body_steps)) * fs_v_pfc_division_bounded_executionquotientstepprevioussum)) /\ exists fs_q_pfc_division_bounded_executionquotientstepprevioussum_body_steps_partial. fs_u_pfc_division_bounded_executionquotientstepprevioussum = fs_q_pfc_division_bounded_executionquotientstepprevioussum_body_steps_partial * S ((S (fs_i_pfc_division_bounded_executionquotientstepprevioussum_body_steps)) * fs_v_pfc_division_bounded_executionquotientstepprevioussum) + (fs_r_pfc_division_bounded_executionquotientstepprevioussum_body_steps))) /\ ((((exists fs_h_pfc_division_bounded_executionquotientstepprevioussum_body_steps_successor. fs_h_pfc_division_bounded_executionquotientstepprevioussum_body_steps_successor + S (fs_s_pfc_division_bounded_executionquotientstepprevioussum_body_steps) = S ((S (S fs_i_pfc_division_bounded_executionquotientstepprevioussum_body_steps)) * fs_v_pfc_division_bounded_executionquotientstepprevioussum)) /\ exists fs_q_pfc_division_bounded_executionquotientstepprevioussum_body_steps_successor. fs_u_pfc_division_bounded_executionquotientstepprevioussum = fs_q_pfc_division_bounded_executionquotientstepprevioussum_body_steps_successor * S ((S (S fs_i_pfc_division_bounded_executionquotientstepprevioussum_body_steps)) * fs_v_pfc_division_bounded_executionquotientstepprevioussum) + (fs_s_pfc_division_bounded_executionquotientstepprevioussum_body_steps))) /\ fs_s_pfc_division_bounded_executionquotientstepprevioussum_body_steps = fs_r_pfc_division_bounded_executionquotientstepprevioussum_body_steps + fs_a_pfc_division_bounded_executionquotientstepprevioussum_body_steps)))))) /\ ((((exists pfa_gap_division_bounded_executionquotientsteppreviousresiduebound. pfa_gap_division_bounded_executionquotientsteppreviousresiduebound + S (pfd_previous_division_bounded_executionquotientstep) = (p)) /\ ((exists pfa_offset_left_division_bounded_executionquotientsteppreviousresiduecongruence pfa_offset_right_division_bounded_executionquotientsteppreviousresiduecongruence. (pfc_natural_sum_division_bounded_executionquotientstepprevious) + (p) * pfa_offset_left_division_bounded_executionquotientsteppreviousresiduecongruence = (pfd_previous_division_bounded_executionquotientstep) + (p) * pfa_offset_right_division_bounded_executionquotientsteppreviousresiduecongruence))))))))) /\ (((((exists pfa_gap_division_bounded_executionquotientstepsubtractleft. pfa_gap_division_bounded_executionquotientstepsubtractleft + S (pfd_previous_division_bounded_executionquotientstep) = (p)) /\ (((exists pfa_gap_division_bounded_executionquotientstepsubtractright. pfa_gap_division_bounded_executionquotientstepsubtractright + S (pfd_difference_division_bounded_executionquotientstep) = (p)) /\ ((((exists pfa_gap_division_bounded_executionquotientstepsubtractresultbound. pfa_gap_division_bounded_executionquotientstepsubtractresultbound + S (pfd_input_division_bounded_executionquotientstep) = (p)) /\ ((exists pfa_offset_left_division_bounded_executionquotientstepsubtractresultcongruence pfa_offset_right_division_bounded_executionquotientstepsubtractresultcongruence. ((pfd_previous_division_bounded_executionquotientstep) + (pfd_difference_division_bounded_executionquotientstep)) + (p) * pfa_offset_left_division_bounded_executionquotientstepsubtractresultcongruence = (pfd_input_division_bounded_executionquotientstep) + (p) * pfa_offset_right_division_bounded_executionquotientstepsubtractresultcongruence))))))))) /\ ((((exists pfa_gap_division_bounded_executionquotientstepmultiplyleft. pfa_gap_division_bounded_executionquotientstepmultiplyleft + S (pfd_inverse_division_bounded_execution) = (p)) /\ (((exists pfa_gap_division_bounded_executionquotientstepmultiplyright. pfa_gap_division_bounded_executionquotientstepmultiplyright + S (pfd_difference_division_bounded_executionquotientstep) = (p)) /\ ((((exists pfa_gap_division_bounded_executionquotientstepmultiplyresultbound. pfa_gap_division_bounded_executionquotientstepmultiplyresultbound + S (pfd_value_division_bounded_executionquotient) = (p)) /\ ((exists pfa_offset_left_division_bounded_executionquotientstepmultiplyresultcongruence pfa_offset_right_division_bounded_executionquotientstepmultiplyresultcongruence. ((pfd_inverse_division_bounded_execution) * (pfd_difference_division_bounded_executionquotientstep)) + (p) * pfa_offset_left_division_bounded_executionquotientstepmultiplyresultcongruence = (pfd_value_division_bounded_executionquotient) + (p) * pfa_offset_right_division_bounded_executionquotientstepmultiplyresultcongruence))))))))))))))))))) /\ (((forall pfc_index_division_bounded_executionproduct. (exists pfa_gap_division_bounded_executionproductbound. pfa_gap_division_bounded_executionproductbound + S (pfc_index_division_bounded_executionproduct) = (L)) -> exists pfc_value_division_bounded_executionproduct. ((((exists ff_h_pfp_division_bounded_executionproductentry. ff_h_pfp_division_bounded_executionproductentry + S (pfc_value_division_bounded_executionproduct) = S ((S (pfc_index_division_bounded_executionproduct)) * pfd_product_scale_division_bounded_execution)) /\ exists ff_q_pfp_division_bounded_executionproductentry. pfd_product_code_division_bounded_execution = ff_q_pfp_division_bounded_executionproductentry * S ((S (pfc_index_division_bounded_executionproduct)) * pfd_product_scale_division_bounded_execution) + (pfc_value_division_bounded_executionproduct))) /\ ((exists pfc_terms_code_division_bounded_executionproductcoefficient pfc_terms_scale_division_bounded_executionproductcoefficient pfc_natural_sum_division_bounded_executionproductcoefficient. ((forall pfc_index_division_bounded_executionproductcoefficientdiagonal. (exists pfa_gap_division_bounded_executionproductcoefficientdiagonalbound. pfa_gap_division_bounded_executionproductcoefficientdiagonalbound + S (pfc_index_division_bounded_executionproductcoefficientdiagonal) = (S (pfc_index_division_bounded_executionproduct))) -> exists pfc_value_division_bounded_executionproductcoefficientdiagonal. ((((exists ff_h_pfp_division_bounded_executionproductcoefficientdiagonalentry. ff_h_pfp_division_bounded_executionproductcoefficientdiagonalentry + S (pfc_value_division_bounded_executionproductcoefficientdiagonal) = S ((S (pfc_index_division_bounded_executionproductcoefficientdiagonal)) * pfc_terms_scale_division_bounded_executionproductcoefficient)) /\ exists ff_q_pfp_division_bounded_executionproductcoefficientdiagonalentry. pfc_terms_code_division_bounded_executionproductcoefficient = ff_q_pfp_division_bounded_executionproductcoefficientdiagonalentry * S ((S (pfc_index_division_bounded_executionproductcoefficientdiagonal)) * pfc_terms_scale_division_bounded_executionproductcoefficient) + (pfc_value_division_bounded_executionproductcoefficientdiagonal))) /\ ((exists pfc_complement_division_bounded_executionproductcoefficientdiagonalterm pfc_left_division_bounded_executionproductcoefficientdiagonalterm pfc_right_division_bounded_executionproductcoefficientdiagonalterm. (((pfc_index_division_bounded_executionproductcoefficientdiagonal)+pfc_complement_division_bounded_executionproductcoefficientdiagonalterm=(pfc_index_division_bounded_executionproduct)) /\ ((((((exists pfa_gap_division_bounded_executionproductcoefficientdiagonaltermleftinside. pfa_gap_division_bounded_executionproductcoefficientdiagonaltermleftinside + S (pfc_index_division_bounded_executionproductcoefficientdiagonal) = (q)) /\ ((((exists ff_h_pfp_division_bounded_executionproductcoefficientdiagonaltermleftentry. ff_h_pfp_division_bounded_executionproductcoefficientdiagonaltermleftentry + S (pfc_left_division_bounded_executionproductcoefficientdiagonalterm) = S ((S (pfc_index_division_bounded_executionproductcoefficientdiagonal)) * qc)) /\ exists ff_q_pfp_division_bounded_executionproductcoefficientdiagonaltermleftentry. qb = ff_q_pfp_division_bounded_executionproductcoefficientdiagonaltermleftentry * S ((S (pfc_index_division_bounded_executionproductcoefficientdiagonal)) * qc) + (pfc_left_division_bounded_executionproductcoefficientdiagonalterm)))))) \/ (((exists pfc_gap_division_bounded_executionproductcoefficientdiagonaltermleftoutside. pfc_gap_division_bounded_executionproductcoefficientdiagonaltermleftoutside+(q)=(pfc_index_division_bounded_executionproductcoefficientdiagonal)) /\ (((pfc_left_division_bounded_executionproductcoefficientdiagonalterm)=0))))) /\ ((((((exists pfa_gap_division_bounded_executionproductcoefficientdiagonaltermrightinside. pfa_gap_division_bounded_executionproductcoefficientdiagonaltermrightinside + S (pfc_complement_division_bounded_executionproductcoefficientdiagonalterm) = (S (d))) /\ ((((exists ff_h_pfp_division_bounded_executionproductcoefficientdiagonaltermrightentry. ff_h_pfp_division_bounded_executionproductcoefficientdiagonaltermrightentry + S (pfc_right_division_bounded_executionproductcoefficientdiagonalterm) = S ((S (pfc_complement_division_bounded_executionproductcoefficientdiagonalterm)) * bc)) /\ exists ff_q_pfp_division_bounded_executionproductcoefficientdiagonaltermrightentry. bb = ff_q_pfp_division_bounded_executionproductcoefficientdiagonaltermrightentry * S ((S (pfc_complement_division_bounded_executionproductcoefficientdiagonalterm)) * bc) + (pfc_right_division_bounded_executionproductcoefficientdiagonalterm)))))) \/ (((exists pfc_gap_division_bounded_executionproductcoefficientdiagonaltermrightoutside. pfc_gap_division_bounded_executionproductcoefficientdiagonaltermrightoutside+(S (d))=(pfc_complement_division_bounded_executionproductcoefficientdiagonalterm)) /\ (((pfc_right_division_bounded_executionproductcoefficientdiagonalterm)=0))))) /\ (((pfc_value_division_bounded_executionproductcoefficientdiagonal)=pfc_left_division_bounded_executionproductcoefficientdiagonalterm*pfc_right_division_bounded_executionproductcoefficientdiagonalterm))))))))))) /\ (((exists fs_u_pfc_division_bounded_executionproductcoefficientsum fs_v_pfc_division_bounded_executionproductcoefficientsum. ((((exists fs_h_pfc_division_bounded_executionproductcoefficientsum_body_start. fs_h_pfc_division_bounded_executionproductcoefficientsum_body_start + S (0) = S ((S (0)) * fs_v_pfc_division_bounded_executionproductcoefficientsum)) /\ exists fs_q_pfc_division_bounded_executionproductcoefficientsum_body_start. fs_u_pfc_division_bounded_executionproductcoefficientsum = fs_q_pfc_division_bounded_executionproductcoefficientsum_body_start * S ((S (0)) * fs_v_pfc_division_bounded_executionproductcoefficientsum) + (0))) /\ ((((exists fs_h_pfc_division_bounded_executionproductcoefficientsum_body_terminal. fs_h_pfc_division_bounded_executionproductcoefficientsum_body_terminal + S (pfc_natural_sum_division_bounded_executionproductcoefficient) = S ((S (S (pfc_index_division_bounded_executionproduct))) * fs_v_pfc_division_bounded_executionproductcoefficientsum)) /\ exists fs_q_pfc_division_bounded_executionproductcoefficientsum_body_terminal. fs_u_pfc_division_bounded_executionproductcoefficientsum = fs_q_pfc_division_bounded_executionproductcoefficientsum_body_terminal * S ((S (S (pfc_index_division_bounded_executionproduct))) * fs_v_pfc_division_bounded_executionproductcoefficientsum) + (pfc_natural_sum_division_bounded_executionproductcoefficient))) /\ forall fs_i_pfc_division_bounded_executionproductcoefficientsum_body_steps. (exists fs_lt_pfc_division_bounded_executionproductcoefficientsum_body_steps_bound. fs_lt_pfc_division_bounded_executionproductcoefficientsum_body_steps_bound + S fs_i_pfc_division_bounded_executionproductcoefficientsum_body_steps = S (pfc_index_division_bounded_executionproduct)) -> exists fs_a_pfc_division_bounded_executionproductcoefficientsum_body_steps fs_r_pfc_division_bounded_executionproductcoefficientsum_body_steps fs_s_pfc_division_bounded_executionproductcoefficientsum_body_steps. ((((exists fs_h_pfc_division_bounded_executionproductcoefficientsum_body_steps_summand. fs_h_pfc_division_bounded_executionproductcoefficientsum_body_steps_summand + S (fs_a_pfc_division_bounded_executionproductcoefficientsum_body_steps) = S ((S (fs_i_pfc_division_bounded_executionproductcoefficientsum_body_steps)) * pfc_terms_scale_division_bounded_executionproductcoefficient)) /\ exists fs_q_pfc_division_bounded_executionproductcoefficientsum_body_steps_summand. pfc_terms_code_division_bounded_executionproductcoefficient = fs_q_pfc_division_bounded_executionproductcoefficientsum_body_steps_summand * S ((S (fs_i_pfc_division_bounded_executionproductcoefficientsum_body_steps)) * pfc_terms_scale_division_bounded_executionproductcoefficient) + (fs_a_pfc_division_bounded_executionproductcoefficientsum_body_steps))) /\ ((((exists fs_h_pfc_division_bounded_executionproductcoefficientsum_body_steps_partial. fs_h_pfc_division_bounded_executionproductcoefficientsum_body_steps_partial + S (fs_r_pfc_division_bounded_executionproductcoefficientsum_body_steps) = S ((S (fs_i_pfc_division_bounded_executionproductcoefficientsum_body_steps)) * fs_v_pfc_division_bounded_executionproductcoefficientsum)) /\ exists fs_q_pfc_division_bounded_executionproductcoefficientsum_body_steps_partial. fs_u_pfc_division_bounded_executionproductcoefficientsum = fs_q_pfc_division_bounded_executionproductcoefficientsum_body_steps_partial * S ((S (fs_i_pfc_division_bounded_executionproductcoefficientsum_body_steps)) * fs_v_pfc_division_bounded_executionproductcoefficientsum) + (fs_r_pfc_division_bounded_executionproductcoefficientsum_body_steps))) /\ ((((exists fs_h_pfc_division_bounded_executionproductcoefficientsum_body_steps_successor. fs_h_pfc_division_bounded_executionproductcoefficientsum_body_steps_successor + S (fs_s_pfc_division_bounded_executionproductcoefficientsum_body_steps) = S ((S (S fs_i_pfc_division_bounded_executionproductcoefficientsum_body_steps)) * fs_v_pfc_division_bounded_executionproductcoefficientsum)) /\ exists fs_q_pfc_division_bounded_executionproductcoefficientsum_body_steps_successor. fs_u_pfc_division_bounded_executionproductcoefficientsum = fs_q_pfc_division_bounded_executionproductcoefficientsum_body_steps_successor * S ((S (S fs_i_pfc_division_bounded_executionproductcoefficientsum_body_steps)) * fs_v_pfc_division_bounded_executionproductcoefficientsum) + (fs_s_pfc_division_bounded_executionproductcoefficientsum_body_steps))) /\ fs_s_pfc_division_bounded_executionproductcoefficientsum_body_steps = fs_r_pfc_division_bounded_executionproductcoefficientsum_body_steps + fs_a_pfc_division_bounded_executionproductcoefficientsum_body_steps)))))) /\ ((((exists pfa_gap_division_bounded_executionproductcoefficientresiduebound. pfa_gap_division_bounded_executionproductcoefficientresiduebound + S (pfc_value_division_bounded_executionproduct) = (p)) /\ ((exists pfa_offset_left_division_bounded_executionproductcoefficientresiduecongruence pfa_offset_right_division_bounded_executionproductcoefficientresiduecongruence. (pfc_natural_sum_division_bounded_executionproductcoefficient) + (p) * pfa_offset_left_division_bounded_executionproductcoefficientresiduecongruence = (pfc_value_division_bounded_executionproduct) + (p) * pfa_offset_right_division_bounded_executionproductcoefficientresiduecongruence)))))))))))) /\ (((forall pfs_index_division_bounded_executiondifference. (exists pfa_gap_division_bounded_executiondifferenceindex. pfa_gap_division_bounded_executiondifferenceindex + S (pfs_index_division_bounded_executiondifference) = (L)) -> exists pfs_left_division_bounded_executiondifference pfs_right_division_bounded_executiondifference pfs_result_division_bounded_executiondifference. ((((exists ff_h_pfp_division_bounded_executiondifferenceleft. ff_h_pfp_division_bounded_executiondifferenceleft + S (pfs_left_division_bounded_executiondifference) = S ((S (pfs_index_division_bounded_executiondifference)) * ac)) /\ exists ff_q_pfp_division_bounded_executiondifferenceleft. ab = ff_q_pfp_division_bounded_executiondifferenceleft * S ((S (pfs_index_division_bounded_executiondifference)) * ac) + (pfs_left_division_bounded_executiondifference))) /\ (((((exists ff_h_pfp_division_bounded_executiondifferenceright. ff_h_pfp_division_bounded_executiondifferenceright + S (pfs_right_division_bounded_executiondifference) = S ((S (pfs_index_division_bounded_executiondifference)) * pfd_product_scale_division_bounded_execution)) /\ exists ff_q_pfp_division_bounded_executiondifferenceright. pfd_product_code_division_bounded_execution = ff_q_pfp_division_bounded_executiondifferenceright * S ((S (pfs_index_division_bounded_executiondifference)) * pfd_product_scale_division_bounded_execution) + (pfs_right_division_bounded_executiondifference))) /\ (((((exists ff_h_pfp_division_bounded_executiondifferenceresult. ff_h_pfp_division_bounded_executiondifferenceresult + S (pfs_result_division_bounded_executiondifference) = S ((S (pfs_index_division_bounded_executiondifference)) * pfd_residual_scale_division_bounded_execution)) /\ exists ff_q_pfp_division_bounded_executiondifferenceresult. pfd_residual_code_division_bounded_execution = ff_q_pfp_division_bounded_executiondifferenceresult * S ((S (pfs_index_division_bounded_executiondifference)) * pfd_residual_scale_division_bounded_execution) + (pfs_result_division_bounded_executiondifference))) /\ ((((exists pfa_gap_division_bounded_executiondifferenceoperationleft. pfa_gap_division_bounded_executiondifferenceoperationleft + S (pfs_right_division_bounded_executiondifference) = (p)) /\ (((exists pfa_gap_division_bounded_executiondifferenceoperationright. pfa_gap_division_bounded_executiondifferenceoperationright + S (pfs_result_division_bounded_executiondifference) = (p)) /\ ((((exists pfa_gap_division_bounded_executiondifferenceoperationresultbound. pfa_gap_division_bounded_executiondifferenceoperationresultbound + S (pfs_left_division_bounded_executiondifference) = (p)) /\ ((exists pfa_offset_left_division_bounded_executiondifferenceoperationresultcongruence pfa_offset_right_division_bounded_executiondifferenceoperationresultcongruence. ((pfs_right_division_bounded_executiondifference) + (pfs_result_division_bounded_executiondifference)) + (p) * pfa_offset_left_division_bounded_executiondifferenceoperationresultcongruence = (pfs_left_division_bounded_executiondifference) + (p) * pfa_offset_right_division_bounded_executiondifferenceoperationresultcongruence)))))))))))))))) /\ (((((L)=(pfd_cut_division_bounded_execution)+(R)) /\ (((forall fom_index_pfp_division_bounded_executiontriminput. (exists fom_gap_pfp_division_bounded_executiontriminput_index_bound. fom_gap_pfp_division_bounded_executiontriminput_index_bound + S (fom_index_pfp_division_bounded_executiontriminput) = L) -> exists fom_value_pfp_division_bounded_executiontriminput. ((((exists fom_beta_height_pfp_division_bounded_executiontriminput_entry. fom_beta_height_pfp_division_bounded_executiontriminput_entry + S (fom_value_pfp_division_bounded_executiontriminput) = S ((S (fom_index_pfp_division_bounded_executiontriminput)) * pfd_residual_scale_division_bounded_execution)) /\ exists fom_beta_quotient_pfp_division_bounded_executiontriminput_entry. pfd_residual_code_division_bounded_execution = fom_beta_quotient_pfp_division_bounded_executiontriminput_entry * S ((S (fom_index_pfp_division_bounded_executiontriminput)) * pfd_residual_scale_division_bounded_execution) + (fom_value_pfp_division_bounded_executiontriminput))) /\ (exists fom_gap_pfp_division_bounded_executiontriminput_value_bound. fom_gap_pfp_division_bounded_executiontriminput_value_bound + S (fom_value_pfp_division_bounded_executiontriminput) = p))) /\ (((forall pfp_repeat_index_division_bounded_executiontrimremoved. (exists pfa_gap_division_bounded_executiontrimremovedindex. pfa_gap_division_bounded_executiontrimremovedindex + S (pfp_repeat_index_division_bounded_executiontrimremoved) = (pfd_cut_division_bounded_execution)) -> (((exists ff_h_pfp_division_bounded_executiontrimremovedentry. ff_h_pfp_division_bounded_executiontrimremovedentry + S (0) = S ((S (pfp_repeat_index_division_bounded_executiontrimremoved)) * pfd_residual_scale_division_bounded_execution)) /\ exists ff_q_pfp_division_bounded_executiontrimremovedentry. pfd_residual_code_division_bounded_execution = ff_q_pfp_division_bounded_executiontrimremovedentry * S ((S (pfp_repeat_index_division_bounded_executiontrimremoved)) * pfd_residual_scale_division_bounded_execution) + (0)))) /\ (((forall pftrim_index_division_bounded_executiontrimsuffix pftrim_value_division_bounded_executiontrimsuffix. (exists pfa_gap_division_bounded_executiontrimsuffixbound. pfa_gap_division_bounded_executiontrimsuffixbound + S (pftrim_index_division_bounded_executiontrimsuffix) = (R)) -> (((exists ff_h_pfp_division_bounded_executiontrimsuffixsource. ff_h_pfp_division_bounded_executiontrimsuffixsource + S (pftrim_value_division_bounded_executiontrimsuffix) = S ((S ((pfd_cut_division_bounded_execution)+pftrim_index_division_bounded_executiontrimsuffix)) * pfd_residual_scale_division_bounded_execution)) /\ exists ff_q_pfp_division_bounded_executiontrimsuffixsource. pfd_residual_code_division_bounded_execution = ff_q_pfp_division_bounded_executiontrimsuffixsource * S ((S ((pfd_cut_division_bounded_execution)+pftrim_index_division_bounded_executiontrimsuffix)) * pfd_residual_scale_division_bounded_execution) + (pftrim_value_division_bounded_executiontrimsuffix))) -> (((exists ff_h_pfp_division_bounded_executiontrimsuffixoutput. ff_h_pfp_division_bounded_executiontrimsuffixoutput + S (pftrim_value_division_bounded_executiontrimsuffix) = S ((S (pftrim_index_division_bounded_executiontrimsuffix)) * rc)) /\ exists ff_q_pfp_division_bounded_executiontrimsuffixoutput. rb = ff_q_pfp_division_bounded_executiontrimsuffixoutput * S ((S (pftrim_index_division_bounded_executiontrimsuffix)) * rc) + (pftrim_value_division_bounded_executiontrimsuffix)))) /\ (((R)=0 \/ (exists pftrim_leading_division_bounded_executiontrimnormal. ((((exists ff_h_pfp_division_bounded_executiontrimnormalentry. ff_h_pfp_division_bounded_executiontrimnormalentry + S (pftrim_leading_division_bounded_executiontrimnormal) = S ((S (0)) * rc)) /\ exists ff_q_pfp_division_bounded_executiontrimnormalentry. rb = ff_q_pfp_division_bounded_executiontrimnormalentry * S ((S (0)) * rc) + (pftrim_leading_division_bounded_executiontrimnormal))) /\ ((~(pftrim_leading_division_bounded_executiontrimnormal=0))))))))))))))))))))))))))))))))) /\ (((R)=0 \/ (exists pfd_remainder_degree_division_bounded_degree. (((((R)=S (pfd_remainder_degree_division_bounded_degree)) /\ (((forall fom_index_pfp_division_bounded_degreerepresentedcoefficients. (exists fom_gap_pfp_division_bounded_degreerepresentedcoefficients_index_bound. fom_gap_pfp_division_bounded_degreerepresentedcoefficients_index_bound + S (fom_index_pfp_division_bounded_degreerepresentedcoefficients) = R) -> exists fom_value_pfp_division_bounded_degreerepresentedcoefficients. ((((exists fom_beta_height_pfp_division_bounded_degreerepresentedcoefficients_entry. fom_beta_height_pfp_division_bounded_degreerepresentedcoefficients_entry + S (fom_value_pfp_division_bounded_degreerepresentedcoefficients) = S ((S (fom_index_pfp_division_bounded_degreerepresentedcoefficients)) * rc)) /\ exists fom_beta_quotient_pfp_division_bounded_degreerepresentedcoefficients_entry. rb = fom_beta_quotient_pfp_division_bounded_degreerepresentedcoefficients_entry * S ((S (fom_index_pfp_division_bounded_degreerepresentedcoefficients)) * rc) + (fom_value_pfp_division_bounded_degreerepresentedcoefficients))) /\ (exists fom_gap_pfp_division_bounded_degreerepresentedcoefficients_value_bound. fom_gap_pfp_division_bounded_degreerepresentedcoefficients_value_bound + S (fom_value_pfp_division_bounded_degreerepresentedcoefficients) = p))) /\ ((exists pfd_leading_division_bounded_degreerepresented. ((((exists ff_h_pfp_division_bounded_degreerepresentedentry. ff_h_pfp_division_bounded_degreerepresentedentry + S (pfd_leading_division_bounded_degreerepresented) = S ((S (0)) * rc)) /\ exists ff_q_pfp_division_bounded_degreerepresentedentry. rb = ff_q_pfp_division_bounded_degreerepresentedentry * S ((S (0)) * rc) + (pfd_leading_division_bounded_degreerepresented))) /\ ((~(pfd_leading_division_bounded_degreerepresented=0)))))))))) /\ ((exists pfa_gap_division_bounded_degreestrict. pfa_gap_division_bounded_degreestrict + S (pfd_remainder_degree_division_bounded_degree) = (d))))))))

Complete tactic proof in conservative notation

All 52 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay script.

Read the argument

Proof checkpoints

52 script commands · 8 reading checkpoints · 1 local claims

This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.

Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.

Named ingredients (2)
01Fix variables and assumptionsL1–10

Work with arbitrary variables or the premises of the current implication.

  1. L1
    intro p
  2. L2
    intro ab
  3. L3
    intro ac
  4. L4
    intro L
  5. L5
    intro bb
  6. L6
    intro bc
  7. L7
    intro d
  8. L8
    intro hp
  9. L9
    intro ha
  10. L10
    intro hb
02Establish hL11–20

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field polynomial division execution exists.

  1. L11
    have h : ∃ qb. ∃ qc. ∃ q. ∃ rb. ∃ rc. ∃ R. FpPolynomialDivisionExecution(p,ab,ac,L,bb,bc,d,qb,qc,q,rb,rc,R)Definitions: FpPolynomialDivisionExecution(p,ab,ac,L,bb,bc,d,qb,qc,q,rb,rc,R)Original native command in the exact edition
  2. L12
    specialize prime_field_polynomial_division_execution_exists (p)
  3. L13
    specialize prime_field_polynomial_division_execution_exists (ab)
  4. L14
    specialize prime_field_polynomial_division_execution_exists (ac)
  5. L15
    specialize prime_field_polynomial_division_execution_exists (L)
  6. L16
    specialize prime_field_polynomial_division_execution_exists (bb)
  7. L17
    specialize prime_field_polynomial_division_execution_exists (bc)
  8. L18
    specialize prime_field_polynomial_division_execution_exists (d)
  9. L19
    apply prime_field_polynomial_division_execution_exists
  10. L20
    exact hp
03Use earlier factsL21–22

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L21
    exact ha
  2. L22
    exact hb
04Separate the logical casesL23–28

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L23
    cases h
  2. L24
    cases h_witness
  3. L25
    cases h_witness_witness
  4. L26
    cases h_witness_witness_witness
  5. L27
    cases h_witness_witness_witness_witness
  6. L28
    cases h_witness_witness_witness_witness_witness
05Construct an explicit witnessL29–34

Supply the displayed value, then prove that it has the required property.

  1. L29
    exists x
  2. L30
    exists x1
  3. L31
    exists x2
  4. L32
    exists x3
  5. L33
    exists x4
  6. L34
    exists x5
06Separate the logical casesL35–35

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L35
    split
07Use earlier factsL36–45

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L36
    exact h_witness_witness_witness_witness_witness_witness
  2. L37
    specialize prime_field_polynomial_division_remainder_degree (p)
  3. L38
    specialize prime_field_polynomial_division_remainder_degree (ab)
  4. L39
    specialize prime_field_polynomial_division_remainder_degree (ac)
  5. L40
    specialize prime_field_polynomial_division_remainder_degree (L)
  6. L41
    specialize prime_field_polynomial_division_remainder_degree (bb)
  7. L42
    specialize prime_field_polynomial_division_remainder_degree (bc)
  8. L43
    specialize prime_field_polynomial_division_remainder_degree (d)
  9. L44
    specialize prime_field_polynomial_division_remainder_degree (x)
  10. L45
    specialize prime_field_polynomial_division_remainder_degree (x1)
08Use earlier factsL46–52

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L46
    specialize prime_field_polynomial_division_remainder_degree (x2)
  2. L47
    specialize prime_field_polynomial_division_remainder_degree (x3)
  3. L48
    specialize prime_field_polynomial_division_remainder_degree (x4)
  4. L49
    specialize prime_field_polynomial_division_remainder_degree (x5)
  5. L50
    apply prime_field_polynomial_division_remainder_degree
  6. L51
    exact hp
  7. L52
    exact h_witness_witness_witness_witness_witness_witness

Library-wide reading audit

Original defined command ledger · 52 lines
  1. 0001intro p
  2. 0002intro ab
  3. 0003intro ac
  4. 0004intro L
  5. 0005intro bb
  6. 0006intro bc
  7. 0007intro d
  8. 0008intro hp
  9. 0009intro ha
  10. 0010intro hb
  11. 0011have h : ∃ qb. ∃ qc. ∃ q. ∃ rb. ∃ rc. ∃ R. FpPolynomialDivisionExecution(p,ab,ac,L,bb,bc,d,qb,qc,q,rb,rc,R)
  12. 0012specialize prime_field_polynomial_division_execution_exists (p)
  13. 0013specialize prime_field_polynomial_division_execution_exists (ab)
  14. 0014specialize prime_field_polynomial_division_execution_exists (ac)
  15. 0015specialize prime_field_polynomial_division_execution_exists (L)
  16. 0016specialize prime_field_polynomial_division_execution_exists (bb)
  17. 0017specialize prime_field_polynomial_division_execution_exists (bc)
  18. 0018specialize prime_field_polynomial_division_execution_exists (d)
  19. 0019apply prime_field_polynomial_division_execution_exists
  20. 0020exact hp
  21. 0021exact ha
  22. 0022exact hb
  23. 0023cases h
  24. 0024cases h_witness
  25. 0025cases h_witness_witness
  26. 0026cases h_witness_witness_witness
  27. 0027cases h_witness_witness_witness_witness
  28. 0028cases h_witness_witness_witness_witness_witness
  29. 0029exists x
  30. 0030exists x1
  31. 0031exists x2
  32. 0032exists x3
  33. 0033exists x4
  34. 0034exists x5
  35. 0035split
  36. 0036exact h_witness_witness_witness_witness_witness_witness
  37. 0037specialize prime_field_polynomial_division_remainder_degree (p)
  38. 0038specialize prime_field_polynomial_division_remainder_degree (ab)
  39. 0039specialize prime_field_polynomial_division_remainder_degree (ac)
  40. 0040specialize prime_field_polynomial_division_remainder_degree (L)
  41. 0041specialize prime_field_polynomial_division_remainder_degree (bb)
  42. 0042specialize prime_field_polynomial_division_remainder_degree (bc)
  43. 0043specialize prime_field_polynomial_division_remainder_degree (d)
  44. 0044specialize prime_field_polynomial_division_remainder_degree (x)
  45. 0045specialize prime_field_polynomial_division_remainder_degree (x1)
  46. 0046specialize prime_field_polynomial_division_remainder_degree (x2)
  47. 0047specialize prime_field_polynomial_division_remainder_degree (x3)
  48. 0048specialize prime_field_polynomial_division_remainder_degree (x4)
  49. 0049specialize prime_field_polynomial_division_remainder_degree (x5)
  50. 0050apply prime_field_polynomial_division_remainder_degree
  51. 0051exact hp
  52. 0052exact h_witness_witness_witness_witness_witness_witness