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 B C a b v. (forall pft_index_addlookup_table. (exists pfa_gap_addlookup_tableprefix. pfa_gap_addlookup_tableprefix + S (pft_index_addlookup_table) = ((p) * (p))) -> exists pft_value_addlookup_table. (((((exists ff_h_pft_addlookup_tablepointentry. ff_h_pft_addlookup_tablepointentry + S (pft_value_addlookup_table) = S ((S (pft_index_addlookup_table)) * C)) /\ exists ff_q_pft_addlookup_tablepointentry. B = ff_q_pft_addlookup_tablepointentry * S ((S (pft_index_addlookup_table)) * C) + (pft_value_addlookup_table))) /\ ((exists pft_row_addlookup_tablepointvalue pft_column_addlookup_tablepointvalue. (((pft_index_addlookup_table) = pft_row_addlookup_tablepointvalue * (p) + pft_column_addlookup_tablepointvalue) /\ ((((exists pfa_gap_addlookup_tablepointvalueoperationleft. pfa_gap_addlookup_tablepointvalueoperationleft + S (pft_row_addlookup_tablepointvalue) = (p)) /\ (((exists pfa_gap_addlookup_tablepointvalueoperationright. pfa_gap_addlookup_tablepointvalueoperationright + S (pft_column_addlookup_tablepointvalue) = (p)) /\ ((((exists pfa_gap_addlookup_tablepointvalueoperationresultbound. pfa_gap_addlookup_tablepointvalueoperationresultbound + S (pft_value_addlookup_table) = (p)) /\ ((exists pfa_offset_left_addlookup_tablepointvalueoperationresultcongruence pfa_offset_right_addlookup_tablepointvalueoperationresultcongruence. ((pft_row_addlookup_tablepointvalue) + (pft_column_addlookup_tablepointvalue)) + (p) * pfa_offset_left_addlookup_tablepointvalueoperationresultcongruence = (pft_value_addlookup_table) + (p) * pfa_offset_right_addlookup_tablepointvalueoperationresultcongruence)))))))))))))))) -> (exists pfa_gap_addlookup_a. pfa_gap_addlookup_a + S (a) = (p)) -> (exists pfa_gap_addlookup_b. pfa_gap_addlookup_b + S (b) = (p)) -> (((exists ff_h_pft_addlookup_at. ff_h_pft_addlookup_at + S (v) = S ((S (a*p+b)) * C)) /\ exists ff_q_pft_addlookup_at. B = ff_q_pft_addlookup_at * S ((S (a*p+b)) * C) + (v))) -> (((exists pfa_gap_addlookup_graphleft. pfa_gap_addlookup_graphleft + S (a) = (p)) /\ (((exists pfa_gap_addlookup_graphright. pfa_gap_addlookup_graphright + S (b) = (p)) /\ ((((exists pfa_gap_addlookup_graphresultbound. pfa_gap_addlookup_graphresultbound + S (v) = (p)) /\ ((exists pfa_offset_left_addlookup_graphresultcongruence pfa_offset_right_addlookup_graphresultcongruence. ((a) + (b)) + (p) * pfa_offset_left_addlookup_graphresultcongruence = (v) + (p) * pfa_offset_right_addlookup_graphresultcongruence)))))))))Constructive proof overview
Generated structural guide
Every decoded add table lookup has exactly the proved canonical arithmetic meaning.
The unchanged tactic script uses 3 declared prerequisites and contains 39 exact native proof lines.
Alpha v34 checked-use · first admitted v31 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
matrix_recursive_flattened_index_bound Alpha theorem; checked-use authorized beta_at_unique Stable theorem; checked-use authorized FP0038 prime_field_add_grid_value_lookupDirect 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
02Establish hpointL11–19
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply htable.
- L11
have hpoint : ∃ w. BetaAt(B,C,a · p + b,w) ∧ FpAddGridValue(p,a · p + b,w)Definitions: FpAddGridValueBetaAt - L12
specialize htable (a*p+b) - L13
apply htable - L14
specialize matrix_recursive_flattened_index_bound (p) - L15
specialize matrix_recursive_flattened_index_bound (a) - L16
specialize matrix_recursive_flattened_index_bound (b) - L17
apply matrix_recursive_flattened_index_bound - L18
exact ha - L19
exact hb
03Separate the logical casesL20–21
04Establish heqL22–31
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
05Calculate and transport equalitiesL32–32
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L32
rewrite heq at hpoint_witness_right
06Use earlier factsL33–39
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original exact command ledger · 39 lines
- 0001
intro p - 0002
intro B - 0003
intro C - 0004
intro a - 0005
intro b - 0006
intro v - 0007
intro htable - 0008
intro ha - 0009
intro hb - 0010
intro hat - 0011
have hpoint : exists w. (((((exists ff_h_pft_addlookup_pointentry. ff_h_pft_addlookup_pointentry + S (w) = S ((S (a*p+b)) * C)) /\ exists ff_q_pft_addlookup_pointentry. B = ff_q_pft_addlookup_pointentry * S ((S (a*p+b)) * C) + (w))) /\ ((exists pft_row_addlookup_pointvalue pft_column_addlookup_pointvalue. (((a*p+b) = pft_row_addlookup_pointvalue * (p) + pft_column_addlookup_pointvalue) /\ ((((exists pfa_gap_addlookup_pointvalueoperationleft. pfa_gap_addlookup_pointvalueoperationleft + S (pft_row_addlookup_pointvalue) = (p)) /\ (((exists pfa_gap_addlookup_pointvalueoperationright. pfa_gap_addlookup_pointvalueoperationright + S (pft_column_addlookup_pointvalue) = (p)) /\ ((((exists pfa_gap_addlookup_pointvalueoperationresultbound. pfa_gap_addlookup_pointvalueoperationresultbound + S (w) = (p)) /\ ((exists pfa_offset_left_addlookup_pointvalueoperationresultcongruence pfa_offset_right_addlookup_pointvalueoperationresultcongruence. ((pft_row_addlookup_pointvalue) + (pft_column_addlookup_pointvalue)) + (p) * pfa_offset_left_addlookup_pointvalueoperationresultcongruence = (w) + (p) * pfa_offset_right_addlookup_pointvalueoperationresultcongruence))))))))))))))) - 0012
specialize htable (a*p+b) - 0013
apply htable - 0014
specialize matrix_recursive_flattened_index_bound (p) - 0015
specialize matrix_recursive_flattened_index_bound (a) - 0016
specialize matrix_recursive_flattened_index_bound (b) - 0017
apply matrix_recursive_flattened_index_bound - 0018
exact ha - 0019
exact hb - 0020
cases hpoint - 0021
cases hpoint_witness - 0022
have heq : x = v - 0023
specialize beta_at_unique (B) - 0024
specialize beta_at_unique (C) - 0025
specialize beta_at_unique (a*p+b) - 0026
specialize beta_at_unique (x) - 0027
specialize beta_at_unique (v) - 0028
apply beta_at_unique - 0029
exact hpoint_witness_left - 0030
exact hat - 0031
rewrite heq at hpoint_witness_right - 0032
rewrite heq at hpoint_witness_right - 0033
specialize prime_field_add_grid_value_lookup (p) - 0034
specialize prime_field_add_grid_value_lookup (a) - 0035
specialize prime_field_add_grid_value_lookup (b) - 0036
specialize prime_field_add_grid_value_lookup (v) - 0037
apply prime_field_add_grid_value_lookup - 0038
exact hb - 0039
exact hpoint_witness_right