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 bb bc sb sc M. (((exists pfa_gap_scalar_zero_actualscalar. pfa_gap_scalar_zero_actualscalar + S (0) = (p)) /\ ((forall pfp_index_scalar_zero_actual. (exists pfa_gap_scalar_zero_actualindex. pfa_gap_scalar_zero_actualindex + S (pfp_index_scalar_zero_actual) = (M)) -> exists pfp_source_scalar_zero_actual pfp_value_scalar_zero_actual. ((((exists ff_h_pfp_scalar_zero_actualsource. ff_h_pfp_scalar_zero_actualsource + S (pfp_source_scalar_zero_actual) = S ((S (pfp_index_scalar_zero_actual)) * bc)) /\ exists ff_q_pfp_scalar_zero_actualsource. bb = ff_q_pfp_scalar_zero_actualsource * S ((S (pfp_index_scalar_zero_actual)) * bc) + (pfp_source_scalar_zero_actual))) /\ (((((exists ff_h_pfp_scalar_zero_actualtarget. ff_h_pfp_scalar_zero_actualtarget + S (pfp_value_scalar_zero_actual) = S ((S (pfp_index_scalar_zero_actual)) * sc)) /\ exists ff_q_pfp_scalar_zero_actualtarget. sb = ff_q_pfp_scalar_zero_actualtarget * S ((S (pfp_index_scalar_zero_actual)) * sc) + (pfp_value_scalar_zero_actual))) /\ ((((exists pfa_gap_scalar_zero_actualoperationleft. pfa_gap_scalar_zero_actualoperationleft + S (0) = (p)) /\ (((exists pfa_gap_scalar_zero_actualoperationright. pfa_gap_scalar_zero_actualoperationright + S (pfp_source_scalar_zero_actual) = (p)) /\ ((((exists pfa_gap_scalar_zero_actualoperationresultbound. pfa_gap_scalar_zero_actualoperationresultbound + S (pfp_value_scalar_zero_actual) = (p)) /\ ((exists pfa_offset_left_scalar_zero_actualoperationresultcongruence pfa_offset_right_scalar_zero_actualoperationresultcongruence. ((0) * (pfp_source_scalar_zero_actual)) + (p) * pfa_offset_left_scalar_zero_actualoperationresultcongruence = (pfp_value_scalar_zero_actual) + (p) * pfa_offset_right_scalar_zero_actualoperationresultcongruence))))))))))))))))) -> (forall pfp_repeat_index_scalar_zero_result. (exists pfa_gap_scalar_zero_resultindex. pfa_gap_scalar_zero_resultindex + S (pfp_repeat_index_scalar_zero_result) = (M)) -> (((exists ff_h_pfp_scalar_zero_resultentry. ff_h_pfp_scalar_zero_resultentry + S (0) = S ((S (pfp_repeat_index_scalar_zero_result)) * sc)) /\ exists ff_q_pfp_scalar_zero_resultentry. sb = ff_q_pfp_scalar_zero_resultentry * S ((S (pfp_repeat_index_scalar_zero_result)) * sc) + (0))))Constructive proof overview
Generated structural guide
Every actual scalar-zero output is an actually all-zero prefix, without primality and without dropping the scalar bound on an empty input.
The unchanged tactic script uses 2 declared prerequisites and contains 35 exact native proof lines.
Alpha v34 checked-use · first admitted v34 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
mul_zero_left Alpha theorem; checked-use authorized prime_field_residue_bounded_value 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.
01Fix variables and assumptionsL1–7
02Separate the logical casesL8–8
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L8
cases hs
03Fix variables and assumptionsL9–10
04Establish hvL11–14
05Separate the logical casesL15–18
06Establish hmL19–20
07Separate the logical casesL21–22
08Establish hzeroL23–25
09Establish heqL26–35
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field residue bounded value.
- L26
have heq : x1=0 - L27
specialize prime_field_residue_bounded_value (p) - L28
specialize prime_field_residue_bounded_value (0) - L29
specialize prime_field_residue_bounded_value (x1) - L30
apply prime_field_residue_bounded_value - L31
exact hs_left - L32
exact hm_right_right - L33
rewrite heq at hv_witness_witness_right_left - L34
rewrite heq at hv_witness_witness_right_left - L35
exact hv_witness_witness_right_left
Original exact command ledger · 35 lines
- 0001
intro p - 0002
intro bb - 0003
intro bc - 0004
intro sb - 0005
intro sc - 0006
intro M - 0007
intro hs - 0008
cases hs - 0009
intro i - 0010
intro hi - 0011
have hv : exists a r. ((((exists ff_h_pfp_scalar_zero_chosen_source. ff_h_pfp_scalar_zero_chosen_source + S (a) = S ((S (i)) * bc)) /\ exists ff_q_pfp_scalar_zero_chosen_source. bb = ff_q_pfp_scalar_zero_chosen_source * S ((S (i)) * bc) + (a))) /\ (((((exists ff_h_pfp_scalar_zero_chosen_target. ff_h_pfp_scalar_zero_chosen_target + S (r) = S ((S (i)) * sc)) /\ exists ff_q_pfp_scalar_zero_chosen_target. sb = ff_q_pfp_scalar_zero_chosen_target * S ((S (i)) * sc) + (r))) /\ ((((exists pfa_gap_scalar_zero_chosen_productleft. pfa_gap_scalar_zero_chosen_productleft + S (0) = (p)) /\ (((exists pfa_gap_scalar_zero_chosen_productright. pfa_gap_scalar_zero_chosen_productright + S (a) = (p)) /\ ((((exists pfa_gap_scalar_zero_chosen_productresultbound. pfa_gap_scalar_zero_chosen_productresultbound + S (r) = (p)) /\ ((exists pfa_offset_left_scalar_zero_chosen_productresultcongruence pfa_offset_right_scalar_zero_chosen_productresultcongruence. ((0) * (a)) + (p) * pfa_offset_left_scalar_zero_chosen_productresultcongruence = (r) + (p) * pfa_offset_right_scalar_zero_chosen_productresultcongruence))))))))))))) - 0012
specialize hs_right (i) - 0013
apply hs_right - 0014
exact hi - 0015
cases hv - 0016
cases hv_witness - 0017
cases hv_witness_witness - 0018
cases hv_witness_witness_right - 0019
have hm : ((exists pfa_gap_scalar_zero_actual_productleft. pfa_gap_scalar_zero_actual_productleft + S (0) = (p)) /\ (((exists pfa_gap_scalar_zero_actual_productright. pfa_gap_scalar_zero_actual_productright + S (x) = (p)) /\ ((((exists pfa_gap_scalar_zero_actual_productresultbound. pfa_gap_scalar_zero_actual_productresultbound + S (x1) = (p)) /\ ((exists pfa_offset_left_scalar_zero_actual_productresultcongruence pfa_offset_right_scalar_zero_actual_productresultcongruence. ((0) * (x)) + (p) * pfa_offset_left_scalar_zero_actual_productresultcongruence = (x1) + (p) * pfa_offset_right_scalar_zero_actual_productresultcongruence)))))))) - 0020
exact hv_witness_witness_right_right - 0021
cases hm - 0022
cases hm_right - 0023
have hzero : 0*x=0 - 0024
apply mul_zero_left - 0025
rewrite hzero at hm_right_right - 0026
have heq : x1=0 - 0027
specialize prime_field_residue_bounded_value (p) - 0028
specialize prime_field_residue_bounded_value (0) - 0029
specialize prime_field_residue_bounded_value (x1) - 0030
apply prime_field_residue_bounded_value - 0031
exact hs_left - 0032
exact hm_right_right - 0033
rewrite heq at hv_witness_witness_right_left - 0034
rewrite heq at hv_witness_witness_right_left - 0035
exact hv_witness_witness_right_left