Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
Exact expanded first-order arithmetic statement
forall p ab ac bb bc rb rc K. (forall pfs_index_sub_fixed_input. (exists pfa_gap_sub_fixed_inputindex. pfa_gap_sub_fixed_inputindex + S (pfs_index_sub_fixed_input) = (K)) -> exists pfs_left_sub_fixed_input pfs_right_sub_fixed_input pfs_result_sub_fixed_input. ((((exists ff_h_pfp_sub_fixed_inputleft. ff_h_pfp_sub_fixed_inputleft + S (pfs_left_sub_fixed_input) = S ((S (pfs_index_sub_fixed_input)) * ac)) /\ exists ff_q_pfp_sub_fixed_inputleft. ab = ff_q_pfp_sub_fixed_inputleft * S ((S (pfs_index_sub_fixed_input)) * ac) + (pfs_left_sub_fixed_input))) /\ (((((exists ff_h_pfp_sub_fixed_inputright. ff_h_pfp_sub_fixed_inputright + S (pfs_right_sub_fixed_input) = S ((S (pfs_index_sub_fixed_input)) * bc)) /\ exists ff_q_pfp_sub_fixed_inputright. bb = ff_q_pfp_sub_fixed_inputright * S ((S (pfs_index_sub_fixed_input)) * bc) + (pfs_right_sub_fixed_input))) /\ (((((exists ff_h_pfp_sub_fixed_inputresult. ff_h_pfp_sub_fixed_inputresult + S (pfs_result_sub_fixed_input) = S ((S (pfs_index_sub_fixed_input)) * rc)) /\ exists ff_q_pfp_sub_fixed_inputresult. rb = ff_q_pfp_sub_fixed_inputresult * S ((S (pfs_index_sub_fixed_input)) * rc) + (pfs_result_sub_fixed_input))) /\ ((((exists pfa_gap_sub_fixed_inputoperationleft. pfa_gap_sub_fixed_inputoperationleft + S (pfs_right_sub_fixed_input) = (p)) /\ (((exists pfa_gap_sub_fixed_inputoperationright. pfa_gap_sub_fixed_inputoperationright + S (pfs_result_sub_fixed_input) = (p)) /\ ((((exists pfa_gap_sub_fixed_inputoperationresultbound. pfa_gap_sub_fixed_inputoperationresultbound + S (pfs_left_sub_fixed_input) = (p)) /\ ((exists pfa_offset_left_sub_fixed_inputoperationresultcongruence pfa_offset_right_sub_fixed_inputoperationresultcongruence. ((pfs_right_sub_fixed_input) + (pfs_result_sub_fixed_input)) + (p) * pfa_offset_left_sub_fixed_inputoperationresultcongruence = (pfs_left_sub_fixed_input) + (p) * pfa_offset_right_sub_fixed_inputoperationresultcongruence)))))))))))))))) -> (((forall fom_index_pfp_sub_fixed_result_left_bounded. (exists fom_gap_pfp_sub_fixed_result_left_bounded_index_bound. fom_gap_pfp_sub_fixed_result_left_bounded_index_bound + S (fom_index_pfp_sub_fixed_result_left_bounded) = K) -> exists fom_value_pfp_sub_fixed_result_left_bounded. ((((exists fom_beta_height_pfp_sub_fixed_result_left_bounded_entry. fom_beta_height_pfp_sub_fixed_result_left_bounded_entry + S (fom_value_pfp_sub_fixed_result_left_bounded) = S ((S (fom_index_pfp_sub_fixed_result_left_bounded)) * bc)) /\ exists fom_beta_quotient_pfp_sub_fixed_result_left_bounded_entry. bb = fom_beta_quotient_pfp_sub_fixed_result_left_bounded_entry * S ((S (fom_index_pfp_sub_fixed_result_left_bounded)) * bc) + (fom_value_pfp_sub_fixed_result_left_bounded))) /\ (exists fom_gap_pfp_sub_fixed_result_left_bounded_value_bound. fom_gap_pfp_sub_fixed_result_left_bounded_value_bound + S (fom_value_pfp_sub_fixed_result_left_bounded) = p))) /\ (((forall fom_index_pfp_sub_fixed_result_right_bounded. (exists fom_gap_pfp_sub_fixed_result_right_bounded_index_bound. fom_gap_pfp_sub_fixed_result_right_bounded_index_bound + S (fom_index_pfp_sub_fixed_result_right_bounded) = K) -> exists fom_value_pfp_sub_fixed_result_right_bounded. ((((exists fom_beta_height_pfp_sub_fixed_result_right_bounded_entry. fom_beta_height_pfp_sub_fixed_result_right_bounded_entry + S (fom_value_pfp_sub_fixed_result_right_bounded) = S ((S (fom_index_pfp_sub_fixed_result_right_bounded)) * rc)) /\ exists fom_beta_quotient_pfp_sub_fixed_result_right_bounded_entry. rb = fom_beta_quotient_pfp_sub_fixed_result_right_bounded_entry * S ((S (fom_index_pfp_sub_fixed_result_right_bounded)) * rc) + (fom_value_pfp_sub_fixed_result_right_bounded))) /\ (exists fom_gap_pfp_sub_fixed_result_right_bounded_value_bound. fom_gap_pfp_sub_fixed_result_right_bounded_value_bound + S (fom_value_pfp_sub_fixed_result_right_bounded) = p))) /\ (((forall fom_index_pfp_sub_fixed_result_result_bounded. (exists fom_gap_pfp_sub_fixed_result_result_bounded_index_bound. fom_gap_pfp_sub_fixed_result_result_bounded_index_bound + S (fom_index_pfp_sub_fixed_result_result_bounded) = K) -> exists fom_value_pfp_sub_fixed_result_result_bounded. ((((exists fom_beta_height_pfp_sub_fixed_result_result_bounded_entry. fom_beta_height_pfp_sub_fixed_result_result_bounded_entry + S (fom_value_pfp_sub_fixed_result_result_bounded) = S ((S (fom_index_pfp_sub_fixed_result_result_bounded)) * ac)) /\ exists fom_beta_quotient_pfp_sub_fixed_result_result_bounded_entry. ab = fom_beta_quotient_pfp_sub_fixed_result_result_bounded_entry * S ((S (fom_index_pfp_sub_fixed_result_result_bounded)) * ac) + (fom_value_pfp_sub_fixed_result_result_bounded))) /\ (exists fom_gap_pfp_sub_fixed_result_result_bounded_value_bound. fom_gap_pfp_sub_fixed_result_result_bounded_value_bound + S (fom_value_pfp_sub_fixed_result_result_bounded) = p))) /\ ((exists pfaa_left_b_sub_fixed_result pfaa_left_c_sub_fixed_result pfaa_right_b_sub_fixed_result pfaa_right_c_sub_fixed_result pfaa_sum_b_sub_fixed_result pfaa_sum_c_sub_fixed_result pfaa_length_sub_fixed_result. ((((forall pfrep_power_sub_fixed_result_witness_common_left pfrep_left_sub_fixed_result_witness_common_left pfrep_right_sub_fixed_result_witness_common_left. ((exists pfrep_position_sub_fixed_result_witness_common_leftfirst. ((pfrep_position_sub_fixed_result_witness_common_leftfirst+S (pfrep_power_sub_fixed_result_witness_common_left)=(K)) /\ ((((exists ff_h_pfp_sub_fixed_result_witness_common_leftfirstentry. ff_h_pfp_sub_fixed_result_witness_common_leftfirstentry + S (pfrep_left_sub_fixed_result_witness_common_left) = S ((S (pfrep_position_sub_fixed_result_witness_common_leftfirst)) * bc)) /\ exists ff_q_pfp_sub_fixed_result_witness_common_leftfirstentry. bb = ff_q_pfp_sub_fixed_result_witness_common_leftfirstentry * S ((S (pfrep_position_sub_fixed_result_witness_common_leftfirst)) * bc) + (pfrep_left_sub_fixed_result_witness_common_left)))))) \/ (((exists pfrep_gap_sub_fixed_result_witness_common_leftfirstoutside. pfrep_gap_sub_fixed_result_witness_common_leftfirstoutside+(K)=(pfrep_power_sub_fixed_result_witness_common_left)) /\ (((pfrep_left_sub_fixed_result_witness_common_left)=0))))) -> ((exists pfrep_position_sub_fixed_result_witness_common_leftsecond. ((pfrep_position_sub_fixed_result_witness_common_leftsecond+S (pfrep_power_sub_fixed_result_witness_common_left)=(pfaa_length_sub_fixed_result)) /\ ((((exists ff_h_pfp_sub_fixed_result_witness_common_leftsecondentry. ff_h_pfp_sub_fixed_result_witness_common_leftsecondentry + S (pfrep_right_sub_fixed_result_witness_common_left) = S ((S (pfrep_position_sub_fixed_result_witness_common_leftsecond)) * pfaa_left_c_sub_fixed_result)) /\ exists ff_q_pfp_sub_fixed_result_witness_common_leftsecondentry. pfaa_left_b_sub_fixed_result = ff_q_pfp_sub_fixed_result_witness_common_leftsecondentry * S ((S (pfrep_position_sub_fixed_result_witness_common_leftsecond)) * pfaa_left_c_sub_fixed_result) + (pfrep_right_sub_fixed_result_witness_common_left)))))) \/ (((exists pfrep_gap_sub_fixed_result_witness_common_leftsecondoutside. pfrep_gap_sub_fixed_result_witness_common_leftsecondoutside+(pfaa_length_sub_fixed_result)=(pfrep_power_sub_fixed_result_witness_common_left)) /\ (((pfrep_right_sub_fixed_result_witness_common_left)=0))))) -> pfrep_left_sub_fixed_result_witness_common_left=pfrep_right_sub_fixed_result_witness_common_left) /\ ((forall pfrep_power_sub_fixed_result_witness_common_right pfrep_left_sub_fixed_result_witness_common_right pfrep_right_sub_fixed_result_witness_common_right. ((exists pfrep_position_sub_fixed_result_witness_common_rightfirst. ((pfrep_position_sub_fixed_result_witness_common_rightfirst+S (pfrep_power_sub_fixed_result_witness_common_right)=(K)) /\ ((((exists ff_h_pfp_sub_fixed_result_witness_common_rightfirstentry. ff_h_pfp_sub_fixed_result_witness_common_rightfirstentry + S (pfrep_left_sub_fixed_result_witness_common_right) = S ((S (pfrep_position_sub_fixed_result_witness_common_rightfirst)) * rc)) /\ exists ff_q_pfp_sub_fixed_result_witness_common_rightfirstentry. rb = ff_q_pfp_sub_fixed_result_witness_common_rightfirstentry * S ((S (pfrep_position_sub_fixed_result_witness_common_rightfirst)) * rc) + (pfrep_left_sub_fixed_result_witness_common_right)))))) \/ (((exists pfrep_gap_sub_fixed_result_witness_common_rightfirstoutside. pfrep_gap_sub_fixed_result_witness_common_rightfirstoutside+(K)=(pfrep_power_sub_fixed_result_witness_common_right)) /\ (((pfrep_left_sub_fixed_result_witness_common_right)=0))))) -> ((exists pfrep_position_sub_fixed_result_witness_common_rightsecond. ((pfrep_position_sub_fixed_result_witness_common_rightsecond+S (pfrep_power_sub_fixed_result_witness_common_right)=(pfaa_length_sub_fixed_result)) /\ ((((exists ff_h_pfp_sub_fixed_result_witness_common_rightsecondentry. ff_h_pfp_sub_fixed_result_witness_common_rightsecondentry + S (pfrep_right_sub_fixed_result_witness_common_right) = S ((S (pfrep_position_sub_fixed_result_witness_common_rightsecond)) * pfaa_right_c_sub_fixed_result)) /\ exists ff_q_pfp_sub_fixed_result_witness_common_rightsecondentry. pfaa_right_b_sub_fixed_result = ff_q_pfp_sub_fixed_result_witness_common_rightsecondentry * S ((S (pfrep_position_sub_fixed_result_witness_common_rightsecond)) * pfaa_right_c_sub_fixed_result) + (pfrep_right_sub_fixed_result_witness_common_right)))))) \/ (((exists pfrep_gap_sub_fixed_result_witness_common_rightsecondoutside. pfrep_gap_sub_fixed_result_witness_common_rightsecondoutside+(pfaa_length_sub_fixed_result)=(pfrep_power_sub_fixed_result_witness_common_right)) /\ (((pfrep_right_sub_fixed_result_witness_common_right)=0))))) -> pfrep_left_sub_fixed_result_witness_common_right=pfrep_right_sub_fixed_result_witness_common_right)))) /\ (((forall pfp_index_sub_fixed_result_witness_operation. (exists pfa_gap_sub_fixed_result_witness_operationindex. pfa_gap_sub_fixed_result_witness_operationindex + S (pfp_index_sub_fixed_result_witness_operation) = (pfaa_length_sub_fixed_result)) -> exists pfp_left_sub_fixed_result_witness_operation pfp_right_sub_fixed_result_witness_operation pfp_value_sub_fixed_result_witness_operation. ((((exists ff_h_pfp_sub_fixed_result_witness_operationleft. ff_h_pfp_sub_fixed_result_witness_operationleft + S (pfp_left_sub_fixed_result_witness_operation) = S ((S (pfp_index_sub_fixed_result_witness_operation)) * pfaa_left_c_sub_fixed_result)) /\ exists ff_q_pfp_sub_fixed_result_witness_operationleft. pfaa_left_b_sub_fixed_result = ff_q_pfp_sub_fixed_result_witness_operationleft * S ((S (pfp_index_sub_fixed_result_witness_operation)) * pfaa_left_c_sub_fixed_result) + (pfp_left_sub_fixed_result_witness_operation))) /\ (((((exists ff_h_pfp_sub_fixed_result_witness_operationright. ff_h_pfp_sub_fixed_result_witness_operationright + S (pfp_right_sub_fixed_result_witness_operation) = S ((S (pfp_index_sub_fixed_result_witness_operation)) * pfaa_right_c_sub_fixed_result)) /\ exists ff_q_pfp_sub_fixed_result_witness_operationright. pfaa_right_b_sub_fixed_result = ff_q_pfp_sub_fixed_result_witness_operationright * S ((S (pfp_index_sub_fixed_result_witness_operation)) * pfaa_right_c_sub_fixed_result) + (pfp_right_sub_fixed_result_witness_operation))) /\ (((((exists ff_h_pfp_sub_fixed_result_witness_operationtarget. ff_h_pfp_sub_fixed_result_witness_operationtarget + S (pfp_value_sub_fixed_result_witness_operation) = S ((S (pfp_index_sub_fixed_result_witness_operation)) * pfaa_sum_c_sub_fixed_result)) /\ exists ff_q_pfp_sub_fixed_result_witness_operationtarget. pfaa_sum_b_sub_fixed_result = ff_q_pfp_sub_fixed_result_witness_operationtarget * S ((S (pfp_index_sub_fixed_result_witness_operation)) * pfaa_sum_c_sub_fixed_result) + (pfp_value_sub_fixed_result_witness_operation))) /\ ((((exists pfa_gap_sub_fixed_result_witness_operationoperationleft. pfa_gap_sub_fixed_result_witness_operationoperationleft + S (pfp_left_sub_fixed_result_witness_operation) = (p)) /\ (((exists pfa_gap_sub_fixed_result_witness_operationoperationright. pfa_gap_sub_fixed_result_witness_operationoperationright + S (pfp_right_sub_fixed_result_witness_operation) = (p)) /\ ((((exists pfa_gap_sub_fixed_result_witness_operationoperationresultbound. pfa_gap_sub_fixed_result_witness_operationoperationresultbound + S (pfp_value_sub_fixed_result_witness_operation) = (p)) /\ ((exists pfa_offset_left_sub_fixed_result_witness_operationoperationresultcongruence pfa_offset_right_sub_fixed_result_witness_operationoperationresultcongruence. ((pfp_left_sub_fixed_result_witness_operation) + (pfp_right_sub_fixed_result_witness_operation)) + (p) * pfa_offset_left_sub_fixed_result_witness_operationoperationresultcongruence = (pfp_value_sub_fixed_result_witness_operation) + (p) * pfa_offset_right_sub_fixed_result_witness_operationoperationresultcongruence)))))))))))))))) /\ ((forall pfrep_power_sub_fixed_result_witness_output pfrep_left_sub_fixed_result_witness_output pfrep_right_sub_fixed_result_witness_output. ((exists pfrep_position_sub_fixed_result_witness_outputfirst. ((pfrep_position_sub_fixed_result_witness_outputfirst+S (pfrep_power_sub_fixed_result_witness_output)=(pfaa_length_sub_fixed_result)) /\ ((((exists ff_h_pfp_sub_fixed_result_witness_outputfirstentry. ff_h_pfp_sub_fixed_result_witness_outputfirstentry + S (pfrep_left_sub_fixed_result_witness_output) = S ((S (pfrep_position_sub_fixed_result_witness_outputfirst)) * pfaa_sum_c_sub_fixed_result)) /\ exists ff_q_pfp_sub_fixed_result_witness_outputfirstentry. pfaa_sum_b_sub_fixed_result = ff_q_pfp_sub_fixed_result_witness_outputfirstentry * S ((S (pfrep_position_sub_fixed_result_witness_outputfirst)) * pfaa_sum_c_sub_fixed_result) + (pfrep_left_sub_fixed_result_witness_output)))))) \/ (((exists pfrep_gap_sub_fixed_result_witness_outputfirstoutside. pfrep_gap_sub_fixed_result_witness_outputfirstoutside+(pfaa_length_sub_fixed_result)=(pfrep_power_sub_fixed_result_witness_output)) /\ (((pfrep_left_sub_fixed_result_witness_output)=0))))) -> ((exists pfrep_position_sub_fixed_result_witness_outputsecond. ((pfrep_position_sub_fixed_result_witness_outputsecond+S (pfrep_power_sub_fixed_result_witness_output)=(K)) /\ ((((exists ff_h_pfp_sub_fixed_result_witness_outputsecondentry. ff_h_pfp_sub_fixed_result_witness_outputsecondentry + S (pfrep_right_sub_fixed_result_witness_output) = S ((S (pfrep_position_sub_fixed_result_witness_outputsecond)) * ac)) /\ exists ff_q_pfp_sub_fixed_result_witness_outputsecondentry. ab = ff_q_pfp_sub_fixed_result_witness_outputsecondentry * S ((S (pfrep_position_sub_fixed_result_witness_outputsecond)) * ac) + (pfrep_right_sub_fixed_result_witness_output)))))) \/ (((exists pfrep_gap_sub_fixed_result_witness_outputsecondoutside. pfrep_gap_sub_fixed_result_witness_outputsecondoutside+(K)=(pfrep_power_sub_fixed_result_witness_output)) /\ (((pfrep_right_sub_fixed_result_witness_output)=0))))) -> pfrep_left_sub_fixed_result_witness_output=pfrep_right_sub_fixed_result_witness_output)))))))))))))Constructive proof overview
Generated structural guide
A genuine fixed-length subtraction is an aligned subtraction because its actual coefficient graph supplies B+R=A.
The unchanged tactic script uses 2 declared prerequisites and contains 28 exact native proof lines.
Alpha v34 checked-use · first admitted v34 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
PG003E prime_field_polynomial_aligned_add_from_fixed prime_field_polynomial_subtract_recover_add Alpha theorem; checked-use authorizedDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
Read the argument
Proof checkpoints
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.
Named ingredients (1)
01Fix variables and assumptionsL1–9
02Use earlier factsL10–19
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L10
specialize prime_field_polynomial_aligned_add_from_fixed (p) - L11
specialize prime_field_polynomial_aligned_add_from_fixed (bb) - L12
specialize prime_field_polynomial_aligned_add_from_fixed (bc) - L13
specialize prime_field_polynomial_aligned_add_from_fixed (rb) - L14
specialize prime_field_polynomial_aligned_add_from_fixed (rc) - L15
specialize prime_field_polynomial_aligned_add_from_fixed (ab) - L16
specialize prime_field_polynomial_aligned_add_from_fixed (ac) - L17
specialize prime_field_polynomial_aligned_add_from_fixed (K) - L18
apply prime_field_polynomial_aligned_add_from_fixed - L19
specialize prime_field_polynomial_subtract_recover_add (p)
03Use earlier factsL20–28
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L20
specialize prime_field_polynomial_subtract_recover_add (ab) - L21
specialize prime_field_polynomial_subtract_recover_add (ac) - L22
specialize prime_field_polynomial_subtract_recover_add (bb) - L23
specialize prime_field_polynomial_subtract_recover_add (bc) - L24
specialize prime_field_polynomial_subtract_recover_add (rb) - L25
specialize prime_field_polynomial_subtract_recover_add (rc) - L26
specialize prime_field_polynomial_subtract_recover_add (K) - L27
apply prime_field_polynomial_subtract_recover_add - L28
exact h
Original exact command ledger · 28 lines
- 0001
intro p - 0002
intro ab - 0003
intro ac - 0004
intro bb - 0005
intro bc - 0006
intro rb - 0007
intro rc - 0008
intro K - 0009
intro h - 0010
specialize prime_field_polynomial_aligned_add_from_fixed (p) - 0011
specialize prime_field_polynomial_aligned_add_from_fixed (bb) - 0012
specialize prime_field_polynomial_aligned_add_from_fixed (bc) - 0013
specialize prime_field_polynomial_aligned_add_from_fixed (rb) - 0014
specialize prime_field_polynomial_aligned_add_from_fixed (rc) - 0015
specialize prime_field_polynomial_aligned_add_from_fixed (ab) - 0016
specialize prime_field_polynomial_aligned_add_from_fixed (ac) - 0017
specialize prime_field_polynomial_aligned_add_from_fixed (K) - 0018
apply prime_field_polynomial_aligned_add_from_fixed - 0019
specialize prime_field_polynomial_subtract_recover_add (p) - 0020
specialize prime_field_polynomial_subtract_recover_add (ab) - 0021
specialize prime_field_polynomial_subtract_recover_add (ac) - 0022
specialize prime_field_polynomial_subtract_recover_add (bb) - 0023
specialize prime_field_polynomial_subtract_recover_add (bc) - 0024
specialize prime_field_polynomial_subtract_recover_add (rb) - 0025
specialize prime_field_polynomial_subtract_recover_add (rc) - 0026
specialize prime_field_polynomial_subtract_recover_add (K) - 0027
apply prime_field_polynomial_subtract_recover_add - 0028
exact h