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 l. (forall pfs_index_subtract_bounded_graph. (exists pfa_gap_subtract_bounded_graphindex. pfa_gap_subtract_bounded_graphindex + S (pfs_index_subtract_bounded_graph) = (l)) -> exists pfs_left_subtract_bounded_graph pfs_right_subtract_bounded_graph pfs_result_subtract_bounded_graph. ((((exists ff_h_pfp_subtract_bounded_graphleft. ff_h_pfp_subtract_bounded_graphleft + S (pfs_left_subtract_bounded_graph) = S ((S (pfs_index_subtract_bounded_graph)) * ac)) /\ exists ff_q_pfp_subtract_bounded_graphleft. ab = ff_q_pfp_subtract_bounded_graphleft * S ((S (pfs_index_subtract_bounded_graph)) * ac) + (pfs_left_subtract_bounded_graph))) /\ (((((exists ff_h_pfp_subtract_bounded_graphright. ff_h_pfp_subtract_bounded_graphright + S (pfs_right_subtract_bounded_graph) = S ((S (pfs_index_subtract_bounded_graph)) * bc)) /\ exists ff_q_pfp_subtract_bounded_graphright. bb = ff_q_pfp_subtract_bounded_graphright * S ((S (pfs_index_subtract_bounded_graph)) * bc) + (pfs_right_subtract_bounded_graph))) /\ (((((exists ff_h_pfp_subtract_bounded_graphresult. ff_h_pfp_subtract_bounded_graphresult + S (pfs_result_subtract_bounded_graph) = S ((S (pfs_index_subtract_bounded_graph)) * rc)) /\ exists ff_q_pfp_subtract_bounded_graphresult. rb = ff_q_pfp_subtract_bounded_graphresult * S ((S (pfs_index_subtract_bounded_graph)) * rc) + (pfs_result_subtract_bounded_graph))) /\ ((((exists pfa_gap_subtract_bounded_graphoperationleft. pfa_gap_subtract_bounded_graphoperationleft + S (pfs_right_subtract_bounded_graph) = (p)) /\ (((exists pfa_gap_subtract_bounded_graphoperationright. pfa_gap_subtract_bounded_graphoperationright + S (pfs_result_subtract_bounded_graph) = (p)) /\ ((((exists pfa_gap_subtract_bounded_graphoperationresultbound. pfa_gap_subtract_bounded_graphoperationresultbound + S (pfs_left_subtract_bounded_graph) = (p)) /\ ((exists pfa_offset_left_subtract_bounded_graphoperationresultcongruence pfa_offset_right_subtract_bounded_graphoperationresultcongruence. ((pfs_right_subtract_bounded_graph) + (pfs_result_subtract_bounded_graph)) + (p) * pfa_offset_left_subtract_bounded_graphoperationresultcongruence = (pfs_left_subtract_bounded_graph) + (p) * pfa_offset_right_subtract_bounded_graphoperationresultcongruence)))))))))))))))) -> ((forall fom_index_pfp_subtract_bounded_ab. (exists fom_gap_pfp_subtract_bounded_ab_index_bound. fom_gap_pfp_subtract_bounded_ab_index_bound + S (fom_index_pfp_subtract_bounded_ab) = l) -> exists fom_value_pfp_subtract_bounded_ab. ((((exists fom_beta_height_pfp_subtract_bounded_ab_entry. fom_beta_height_pfp_subtract_bounded_ab_entry + S (fom_value_pfp_subtract_bounded_ab) = S ((S (fom_index_pfp_subtract_bounded_ab)) * ac)) /\ exists fom_beta_quotient_pfp_subtract_bounded_ab_entry. ab = fom_beta_quotient_pfp_subtract_bounded_ab_entry * S ((S (fom_index_pfp_subtract_bounded_ab)) * ac) + (fom_value_pfp_subtract_bounded_ab))) /\ (exists fom_gap_pfp_subtract_bounded_ab_value_bound. fom_gap_pfp_subtract_bounded_ab_value_bound + S (fom_value_pfp_subtract_bounded_ab) = p))) /\ (((forall fom_index_pfp_subtract_bounded_bb. (exists fom_gap_pfp_subtract_bounded_bb_index_bound. fom_gap_pfp_subtract_bounded_bb_index_bound + S (fom_index_pfp_subtract_bounded_bb) = l) -> exists fom_value_pfp_subtract_bounded_bb. ((((exists fom_beta_height_pfp_subtract_bounded_bb_entry. fom_beta_height_pfp_subtract_bounded_bb_entry + S (fom_value_pfp_subtract_bounded_bb) = S ((S (fom_index_pfp_subtract_bounded_bb)) * bc)) /\ exists fom_beta_quotient_pfp_subtract_bounded_bb_entry. bb = fom_beta_quotient_pfp_subtract_bounded_bb_entry * S ((S (fom_index_pfp_subtract_bounded_bb)) * bc) + (fom_value_pfp_subtract_bounded_bb))) /\ (exists fom_gap_pfp_subtract_bounded_bb_value_bound. fom_gap_pfp_subtract_bounded_bb_value_bound + S (fom_value_pfp_subtract_bounded_bb) = p))) /\ ((forall fom_index_pfp_subtract_bounded_rb. (exists fom_gap_pfp_subtract_bounded_rb_index_bound. fom_gap_pfp_subtract_bounded_rb_index_bound + S (fom_index_pfp_subtract_bounded_rb) = l) -> exists fom_value_pfp_subtract_bounded_rb. ((((exists fom_beta_height_pfp_subtract_bounded_rb_entry. fom_beta_height_pfp_subtract_bounded_rb_entry + S (fom_value_pfp_subtract_bounded_rb) = S ((S (fom_index_pfp_subtract_bounded_rb)) * rc)) /\ exists fom_beta_quotient_pfp_subtract_bounded_rb_entry. rb = fom_beta_quotient_pfp_subtract_bounded_rb_entry * S ((S (fom_index_pfp_subtract_bounded_rb)) * rc) + (fom_value_pfp_subtract_bounded_rb))) /\ (exists fom_gap_pfp_subtract_bounded_rb_value_bound. fom_gap_pfp_subtract_bounded_rb_value_bound + S (fom_value_pfp_subtract_bounded_rb) = p)))))))Constructive proof overview
Generated structural guide
The actual operation graph itself forces every source and result coefficient to be canonical.
The unchanged tactic script uses 0 declared prerequisites and contains 68 exact native proof lines.
Alpha v34 checked-use · first admitted v32 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
Direct 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–9
02Separate the logical casesL10–10
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L10
split
03Fix variables and assumptionsL11–12
04Establish hvL13–16
05Separate the logical casesL17–25
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L17
cases hv - L18
cases hv_witness - L19
cases hv_witness_witness - L20
cases hv_witness_witness_witness - L21
cases hv_witness_witness_witness_right - L22
cases hv_witness_witness_witness_right_right - L23
cases hv_witness_witness_witness_right_right_right - L24
cases hv_witness_witness_witness_right_right_right_right - L25
cases hv_witness_witness_witness_right_right_right_right_right
06Construct an explicit witnessL26–26
Supply the displayed value, then prove that it has the required property.
- L26
exists x
07Separate the logical casesL27–27
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L27
split
08Use earlier factsL28–29
09Separate the logical casesL30–30
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L30
split
10Fix variables and assumptionsL31–32
11Establish hvL33–36
12Separate the logical casesL37–45
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L37
cases hv - L38
cases hv_witness - L39
cases hv_witness_witness - L40
cases hv_witness_witness_witness - L41
cases hv_witness_witness_witness_right - L42
cases hv_witness_witness_witness_right_right - L43
cases hv_witness_witness_witness_right_right_right - L44
cases hv_witness_witness_witness_right_right_right_right - L45
cases hv_witness_witness_witness_right_right_right_right_right
13Construct an explicit witnessL46–46
Supply the displayed value, then prove that it has the required property.
- L46
exists x1
14Separate the logical casesL47–47
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L47
split
15Use earlier factsL48–49
16Fix variables and assumptionsL50–51
17Establish hvL52–55
18Separate the logical casesL56–64
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L56
cases hv - L57
cases hv_witness - L58
cases hv_witness_witness - L59
cases hv_witness_witness_witness - L60
cases hv_witness_witness_witness_right - L61
cases hv_witness_witness_witness_right_right - L62
cases hv_witness_witness_witness_right_right_right - L63
cases hv_witness_witness_witness_right_right_right_right - L64
cases hv_witness_witness_witness_right_right_right_right_right
19Construct an explicit witnessL65–65
Supply the displayed value, then prove that it has the required property.
- L65
exists x2
20Separate the logical casesL66–66
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L66
split
Original exact command ledger · 68 lines
- 0001
intro p - 0002
intro ab - 0003
intro ac - 0004
intro bb - 0005
intro bc - 0006
intro rb - 0007
intro rc - 0008
intro l - 0009
intro h - 0010
split - 0011
intro i - 0012
intro hi - 0013
have hv : exists a b r. (((((exists ff_h_pfp_subtract_bound_chosen0. ff_h_pfp_subtract_bound_chosen0 + S (a) = S ((S (i)) * ac)) /\ exists ff_q_pfp_subtract_bound_chosen0. ab = ff_q_pfp_subtract_bound_chosen0 * S ((S (i)) * ac) + (a))) /\ (((((exists ff_h_pfp_subtract_bound_chosen1. ff_h_pfp_subtract_bound_chosen1 + S (b) = S ((S (i)) * bc)) /\ exists ff_q_pfp_subtract_bound_chosen1. bb = ff_q_pfp_subtract_bound_chosen1 * S ((S (i)) * bc) + (b))) /\ (((((exists ff_h_pfp_subtract_bound_chosen2. ff_h_pfp_subtract_bound_chosen2 + S (r) = S ((S (i)) * rc)) /\ exists ff_q_pfp_subtract_bound_chosen2. rb = ff_q_pfp_subtract_bound_chosen2 * S ((S (i)) * rc) + (r))) /\ ((((exists pfa_gap_subtract_bound_chosenoperationleft. pfa_gap_subtract_bound_chosenoperationleft + S (b) = (p)) /\ (((exists pfa_gap_subtract_bound_chosenoperationright. pfa_gap_subtract_bound_chosenoperationright + S (r) = (p)) /\ ((((exists pfa_gap_subtract_bound_chosenoperationresultbound. pfa_gap_subtract_bound_chosenoperationresultbound + S (a) = (p)) /\ ((exists pfa_offset_left_subtract_bound_chosenoperationresultcongruence pfa_offset_right_subtract_bound_chosenoperationresultcongruence. ((b) + (r)) + (p) * pfa_offset_left_subtract_bound_chosenoperationresultcongruence = (a) + (p) * pfa_offset_right_subtract_bound_chosenoperationresultcongruence)))))))))))))))) - 0014
specialize h (i) - 0015
apply h - 0016
exact hi - 0017
cases hv - 0018
cases hv_witness - 0019
cases hv_witness_witness - 0020
cases hv_witness_witness_witness - 0021
cases hv_witness_witness_witness_right - 0022
cases hv_witness_witness_witness_right_right - 0023
cases hv_witness_witness_witness_right_right_right - 0024
cases hv_witness_witness_witness_right_right_right_right - 0025
cases hv_witness_witness_witness_right_right_right_right_right - 0026
exists x - 0027
split - 0028
exact hv_witness_witness_witness_left - 0029
exact hv_witness_witness_witness_right_right_right_right_right_left - 0030
split - 0031
intro i - 0032
intro hi - 0033
have hv : exists a b r. (((((exists ff_h_pfp_subtract_bound_chosen0. ff_h_pfp_subtract_bound_chosen0 + S (a) = S ((S (i)) * ac)) /\ exists ff_q_pfp_subtract_bound_chosen0. ab = ff_q_pfp_subtract_bound_chosen0 * S ((S (i)) * ac) + (a))) /\ (((((exists ff_h_pfp_subtract_bound_chosen1. ff_h_pfp_subtract_bound_chosen1 + S (b) = S ((S (i)) * bc)) /\ exists ff_q_pfp_subtract_bound_chosen1. bb = ff_q_pfp_subtract_bound_chosen1 * S ((S (i)) * bc) + (b))) /\ (((((exists ff_h_pfp_subtract_bound_chosen2. ff_h_pfp_subtract_bound_chosen2 + S (r) = S ((S (i)) * rc)) /\ exists ff_q_pfp_subtract_bound_chosen2. rb = ff_q_pfp_subtract_bound_chosen2 * S ((S (i)) * rc) + (r))) /\ ((((exists pfa_gap_subtract_bound_chosenoperationleft. pfa_gap_subtract_bound_chosenoperationleft + S (b) = (p)) /\ (((exists pfa_gap_subtract_bound_chosenoperationright. pfa_gap_subtract_bound_chosenoperationright + S (r) = (p)) /\ ((((exists pfa_gap_subtract_bound_chosenoperationresultbound. pfa_gap_subtract_bound_chosenoperationresultbound + S (a) = (p)) /\ ((exists pfa_offset_left_subtract_bound_chosenoperationresultcongruence pfa_offset_right_subtract_bound_chosenoperationresultcongruence. ((b) + (r)) + (p) * pfa_offset_left_subtract_bound_chosenoperationresultcongruence = (a) + (p) * pfa_offset_right_subtract_bound_chosenoperationresultcongruence)))))))))))))))) - 0034
specialize h (i) - 0035
apply h - 0036
exact hi - 0037
cases hv - 0038
cases hv_witness - 0039
cases hv_witness_witness - 0040
cases hv_witness_witness_witness - 0041
cases hv_witness_witness_witness_right - 0042
cases hv_witness_witness_witness_right_right - 0043
cases hv_witness_witness_witness_right_right_right - 0044
cases hv_witness_witness_witness_right_right_right_right - 0045
cases hv_witness_witness_witness_right_right_right_right_right - 0046
exists x1 - 0047
split - 0048
exact hv_witness_witness_witness_right_left - 0049
exact hv_witness_witness_witness_right_right_right_left - 0050
intro i - 0051
intro hi - 0052
have hv : exists a b r. (((((exists ff_h_pfp_subtract_bound_chosen0. ff_h_pfp_subtract_bound_chosen0 + S (a) = S ((S (i)) * ac)) /\ exists ff_q_pfp_subtract_bound_chosen0. ab = ff_q_pfp_subtract_bound_chosen0 * S ((S (i)) * ac) + (a))) /\ (((((exists ff_h_pfp_subtract_bound_chosen1. ff_h_pfp_subtract_bound_chosen1 + S (b) = S ((S (i)) * bc)) /\ exists ff_q_pfp_subtract_bound_chosen1. bb = ff_q_pfp_subtract_bound_chosen1 * S ((S (i)) * bc) + (b))) /\ (((((exists ff_h_pfp_subtract_bound_chosen2. ff_h_pfp_subtract_bound_chosen2 + S (r) = S ((S (i)) * rc)) /\ exists ff_q_pfp_subtract_bound_chosen2. rb = ff_q_pfp_subtract_bound_chosen2 * S ((S (i)) * rc) + (r))) /\ ((((exists pfa_gap_subtract_bound_chosenoperationleft. pfa_gap_subtract_bound_chosenoperationleft + S (b) = (p)) /\ (((exists pfa_gap_subtract_bound_chosenoperationright. pfa_gap_subtract_bound_chosenoperationright + S (r) = (p)) /\ ((((exists pfa_gap_subtract_bound_chosenoperationresultbound. pfa_gap_subtract_bound_chosenoperationresultbound + S (a) = (p)) /\ ((exists pfa_offset_left_subtract_bound_chosenoperationresultcongruence pfa_offset_right_subtract_bound_chosenoperationresultcongruence. ((b) + (r)) + (p) * pfa_offset_left_subtract_bound_chosenoperationresultcongruence = (a) + (p) * pfa_offset_right_subtract_bound_chosenoperationresultcongruence)))))))))))))))) - 0053
specialize h (i) - 0054
apply h - 0055
exact hi - 0056
cases hv - 0057
cases hv_witness - 0058
cases hv_witness_witness - 0059
cases hv_witness_witness_witness - 0060
cases hv_witness_witness_witness_right - 0061
cases hv_witness_witness_witness_right_right - 0062
cases hv_witness_witness_witness_right_right_right - 0063
cases hv_witness_witness_witness_right_right_right_right - 0064
cases hv_witness_witness_witness_right_right_right_right_right - 0065
exists x2 - 0066
split - 0067
exact hv_witness_witness_witness_right_right_left - 0068
exact hv_witness_witness_witness_right_right_right_right_left