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 cb cc rb rc l. (forall pfs_index_sub_cancel_right_first. (exists pfa_gap_sub_cancel_right_firstindex. pfa_gap_sub_cancel_right_firstindex + S (pfs_index_sub_cancel_right_first) = (l)) -> exists pfs_left_sub_cancel_right_first pfs_right_sub_cancel_right_first pfs_result_sub_cancel_right_first. ((((exists ff_h_pfp_sub_cancel_right_firstleft. ff_h_pfp_sub_cancel_right_firstleft + S (pfs_left_sub_cancel_right_first) = S ((S (pfs_index_sub_cancel_right_first)) * ac)) /\ exists ff_q_pfp_sub_cancel_right_firstleft. ab = ff_q_pfp_sub_cancel_right_firstleft * S ((S (pfs_index_sub_cancel_right_first)) * ac) + (pfs_left_sub_cancel_right_first))) /\ (((((exists ff_h_pfp_sub_cancel_right_firstright. ff_h_pfp_sub_cancel_right_firstright + S (pfs_right_sub_cancel_right_first) = S ((S (pfs_index_sub_cancel_right_first)) * cc)) /\ exists ff_q_pfp_sub_cancel_right_firstright. cb = ff_q_pfp_sub_cancel_right_firstright * S ((S (pfs_index_sub_cancel_right_first)) * cc) + (pfs_right_sub_cancel_right_first))) /\ (((((exists ff_h_pfp_sub_cancel_right_firstresult. ff_h_pfp_sub_cancel_right_firstresult + S (pfs_result_sub_cancel_right_first) = S ((S (pfs_index_sub_cancel_right_first)) * rc)) /\ exists ff_q_pfp_sub_cancel_right_firstresult. rb = ff_q_pfp_sub_cancel_right_firstresult * S ((S (pfs_index_sub_cancel_right_first)) * rc) + (pfs_result_sub_cancel_right_first))) /\ ((((exists pfa_gap_sub_cancel_right_firstoperationleft. pfa_gap_sub_cancel_right_firstoperationleft + S (pfs_right_sub_cancel_right_first) = (p)) /\ (((exists pfa_gap_sub_cancel_right_firstoperationright. pfa_gap_sub_cancel_right_firstoperationright + S (pfs_result_sub_cancel_right_first) = (p)) /\ ((((exists pfa_gap_sub_cancel_right_firstoperationresultbound. pfa_gap_sub_cancel_right_firstoperationresultbound + S (pfs_left_sub_cancel_right_first) = (p)) /\ ((exists pfa_offset_left_sub_cancel_right_firstoperationresultcongruence pfa_offset_right_sub_cancel_right_firstoperationresultcongruence. ((pfs_right_sub_cancel_right_first) + (pfs_result_sub_cancel_right_first)) + (p) * pfa_offset_left_sub_cancel_right_firstoperationresultcongruence = (pfs_left_sub_cancel_right_first) + (p) * pfa_offset_right_sub_cancel_right_firstoperationresultcongruence)))))))))))))))) -> (forall pfs_index_sub_cancel_right_second. (exists pfa_gap_sub_cancel_right_secondindex. pfa_gap_sub_cancel_right_secondindex + S (pfs_index_sub_cancel_right_second) = (l)) -> exists pfs_left_sub_cancel_right_second pfs_right_sub_cancel_right_second pfs_result_sub_cancel_right_second. ((((exists ff_h_pfp_sub_cancel_right_secondleft. ff_h_pfp_sub_cancel_right_secondleft + S (pfs_left_sub_cancel_right_second) = S ((S (pfs_index_sub_cancel_right_second)) * bc)) /\ exists ff_q_pfp_sub_cancel_right_secondleft. bb = ff_q_pfp_sub_cancel_right_secondleft * S ((S (pfs_index_sub_cancel_right_second)) * bc) + (pfs_left_sub_cancel_right_second))) /\ (((((exists ff_h_pfp_sub_cancel_right_secondright. ff_h_pfp_sub_cancel_right_secondright + S (pfs_right_sub_cancel_right_second) = S ((S (pfs_index_sub_cancel_right_second)) * cc)) /\ exists ff_q_pfp_sub_cancel_right_secondright. cb = ff_q_pfp_sub_cancel_right_secondright * S ((S (pfs_index_sub_cancel_right_second)) * cc) + (pfs_right_sub_cancel_right_second))) /\ (((((exists ff_h_pfp_sub_cancel_right_secondresult. ff_h_pfp_sub_cancel_right_secondresult + S (pfs_result_sub_cancel_right_second) = S ((S (pfs_index_sub_cancel_right_second)) * rc)) /\ exists ff_q_pfp_sub_cancel_right_secondresult. rb = ff_q_pfp_sub_cancel_right_secondresult * S ((S (pfs_index_sub_cancel_right_second)) * rc) + (pfs_result_sub_cancel_right_second))) /\ ((((exists pfa_gap_sub_cancel_right_secondoperationleft. pfa_gap_sub_cancel_right_secondoperationleft + S (pfs_right_sub_cancel_right_second) = (p)) /\ (((exists pfa_gap_sub_cancel_right_secondoperationright. pfa_gap_sub_cancel_right_secondoperationright + S (pfs_result_sub_cancel_right_second) = (p)) /\ ((((exists pfa_gap_sub_cancel_right_secondoperationresultbound. pfa_gap_sub_cancel_right_secondoperationresultbound + S (pfs_left_sub_cancel_right_second) = (p)) /\ ((exists pfa_offset_left_sub_cancel_right_secondoperationresultcongruence pfa_offset_right_sub_cancel_right_secondoperationresultcongruence. ((pfs_right_sub_cancel_right_second) + (pfs_result_sub_cancel_right_second)) + (p) * pfa_offset_left_sub_cancel_right_secondoperationresultcongruence = (pfs_left_sub_cancel_right_second) + (p) * pfa_offset_right_sub_cancel_right_secondoperationresultcongruence)))))))))))))))) -> (forall mdr_i_pfp_sub_cancel_right_result mdr_a_pfp_sub_cancel_right_result. (exists mdr_gap_pfp_sub_cancel_right_resultb. mdr_gap_pfp_sub_cancel_right_resultb + S (mdr_i_pfp_sub_cancel_right_result) = (l)) -> (((exists ff_h_mdr_pfp_sub_cancel_right_resulto. ff_h_mdr_pfp_sub_cancel_right_resulto + S (mdr_a_pfp_sub_cancel_right_result) = S ((S (mdr_i_pfp_sub_cancel_right_result)) * ac)) /\ exists ff_q_mdr_pfp_sub_cancel_right_resulto. ab = ff_q_mdr_pfp_sub_cancel_right_resulto * S ((S (mdr_i_pfp_sub_cancel_right_result)) * ac) + (mdr_a_pfp_sub_cancel_right_result))) -> (((exists ff_h_mdr_pfp_sub_cancel_right_resultn. ff_h_mdr_pfp_sub_cancel_right_resultn + S (mdr_a_pfp_sub_cancel_right_result) = S ((S (mdr_i_pfp_sub_cancel_right_result)) * bc)) /\ exists ff_q_mdr_pfp_sub_cancel_right_resultn. bb = ff_q_mdr_pfp_sub_cancel_right_resultn * S ((S (mdr_i_pfp_sub_cancel_right_result)) * bc) + (mdr_a_pfp_sub_cancel_right_result))))Constructive proof overview
Generated structural guide
Two actual differences with the same subtrahend and result have equal represented minuend coefficients.
The unchanged tactic script uses 2 declared prerequisites and contains 43 exact native proof lines.
Alpha v34 checked-use · first admitted v32 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
prime_field_polynomial_add_functional Alpha theorem; checked-use authorized PQ0012 prime_field_polynomial_subtract_recover_addDirect 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–10
02Fix variables and assumptionsL11–12
03Use earlier factsL13–22
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L13
specialize prime_field_polynomial_add_functional (p) - L14
specialize prime_field_polynomial_add_functional (cb) - L15
specialize prime_field_polynomial_add_functional (cc) - L16
specialize prime_field_polynomial_add_functional (rb) - L17
specialize prime_field_polynomial_add_functional (rc) - L18
specialize prime_field_polynomial_add_functional (ab) - L19
specialize prime_field_polynomial_add_functional (ac) - L20
specialize prime_field_polynomial_add_functional (bb) - L21
specialize prime_field_polynomial_add_functional (bc) - L22
specialize prime_field_polynomial_add_functional (l)
04Use earlier factsL23–32
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L23
apply prime_field_polynomial_add_functional - L24
specialize prime_field_polynomial_subtract_recover_add (p) - L25
specialize prime_field_polynomial_subtract_recover_add (ab) - L26
specialize prime_field_polynomial_subtract_recover_add (ac) - L27
specialize prime_field_polynomial_subtract_recover_add (cb) - L28
specialize prime_field_polynomial_subtract_recover_add (cc) - L29
specialize prime_field_polynomial_subtract_recover_add (rb) - L30
specialize prime_field_polynomial_subtract_recover_add (rc) - L31
specialize prime_field_polynomial_subtract_recover_add (l) - L32
apply prime_field_polynomial_subtract_recover_add
05Use earlier factsL33–42
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L33
exact ha - L34
specialize prime_field_polynomial_subtract_recover_add (p) - L35
specialize prime_field_polynomial_subtract_recover_add (bb) - L36
specialize prime_field_polynomial_subtract_recover_add (bc) - L37
specialize prime_field_polynomial_subtract_recover_add (cb) - L38
specialize prime_field_polynomial_subtract_recover_add (cc) - L39
specialize prime_field_polynomial_subtract_recover_add (rb) - L40
specialize prime_field_polynomial_subtract_recover_add (rc) - L41
specialize prime_field_polynomial_subtract_recover_add (l) - L42
apply prime_field_polynomial_subtract_recover_add
06Use earlier factsL43–43
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L43
exact hb
Original exact command ledger · 43 lines
- 0001
intro p - 0002
intro ab - 0003
intro ac - 0004
intro bb - 0005
intro bc - 0006
intro cb - 0007
intro cc - 0008
intro rb - 0009
intro rc - 0010
intro l - 0011
intro ha - 0012
intro hb - 0013
specialize prime_field_polynomial_add_functional (p) - 0014
specialize prime_field_polynomial_add_functional (cb) - 0015
specialize prime_field_polynomial_add_functional (cc) - 0016
specialize prime_field_polynomial_add_functional (rb) - 0017
specialize prime_field_polynomial_add_functional (rc) - 0018
specialize prime_field_polynomial_add_functional (ab) - 0019
specialize prime_field_polynomial_add_functional (ac) - 0020
specialize prime_field_polynomial_add_functional (bb) - 0021
specialize prime_field_polynomial_add_functional (bc) - 0022
specialize prime_field_polynomial_add_functional (l) - 0023
apply prime_field_polynomial_add_functional - 0024
specialize prime_field_polynomial_subtract_recover_add (p) - 0025
specialize prime_field_polynomial_subtract_recover_add (ab) - 0026
specialize prime_field_polynomial_subtract_recover_add (ac) - 0027
specialize prime_field_polynomial_subtract_recover_add (cb) - 0028
specialize prime_field_polynomial_subtract_recover_add (cc) - 0029
specialize prime_field_polynomial_subtract_recover_add (rb) - 0030
specialize prime_field_polynomial_subtract_recover_add (rc) - 0031
specialize prime_field_polynomial_subtract_recover_add (l) - 0032
apply prime_field_polynomial_subtract_recover_add - 0033
exact ha - 0034
specialize prime_field_polynomial_subtract_recover_add (p) - 0035
specialize prime_field_polynomial_subtract_recover_add (bb) - 0036
specialize prime_field_polynomial_subtract_recover_add (bc) - 0037
specialize prime_field_polynomial_subtract_recover_add (cb) - 0038
specialize prime_field_polynomial_subtract_recover_add (cc) - 0039
specialize prime_field_polynomial_subtract_recover_add (rb) - 0040
specialize prime_field_polynomial_subtract_recover_add (rc) - 0041
specialize prime_field_polynomial_subtract_recover_add (l) - 0042
apply prime_field_polynomial_subtract_recover_add - 0043
exact hb