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 original first-admission records.
Exact expanded first-order arithmetic statement
forall ab ac bb bc eb ec fb fc q j r s a b c d. (forall ics_index_minor_parent_equal ics_value0_minor_parent_equal ics_value1_minor_parent_equal ics_value2_minor_parent_equal ics_value3_minor_parent_equal. (exists ics_gap_minor_parent_equal_bound. ics_gap_minor_parent_equal_bound + S (ics_index_minor_parent_equal) = ((S q) * (S q))) -> (((exists fs_h_ics_minor_parent_equal_at0. fs_h_ics_minor_parent_equal_at0 + S (ics_value0_minor_parent_equal) = S ((S (ics_index_minor_parent_equal)) * ac)) /\ exists fs_q_ics_minor_parent_equal_at0. ab = fs_q_ics_minor_parent_equal_at0 * S ((S (ics_index_minor_parent_equal)) * ac) + (ics_value0_minor_parent_equal))) -> (((exists fs_h_ics_minor_parent_equal_at1. fs_h_ics_minor_parent_equal_at1 + S (ics_value1_minor_parent_equal) = S ((S (ics_index_minor_parent_equal)) * bc)) /\ exists fs_q_ics_minor_parent_equal_at1. bb = fs_q_ics_minor_parent_equal_at1 * S ((S (ics_index_minor_parent_equal)) * bc) + (ics_value1_minor_parent_equal))) -> (((exists fs_h_ics_minor_parent_equal_at2. fs_h_ics_minor_parent_equal_at2 + S (ics_value2_minor_parent_equal) = S ((S (ics_index_minor_parent_equal)) * ec)) /\ exists fs_q_ics_minor_parent_equal_at2. eb = fs_q_ics_minor_parent_equal_at2 * S ((S (ics_index_minor_parent_equal)) * ec) + (ics_value2_minor_parent_equal))) -> (((exists fs_h_ics_minor_parent_equal_at3. fs_h_ics_minor_parent_equal_at3 + S (ics_value3_minor_parent_equal) = S ((S (ics_index_minor_parent_equal)) * fc)) /\ exists fs_q_ics_minor_parent_equal_at3. fb = fs_q_ics_minor_parent_equal_at3 * S ((S (ics_index_minor_parent_equal)) * fc) + (ics_value3_minor_parent_equal))) -> ics_value0_minor_parent_equal + ics_value3_minor_parent_equal = ics_value2_minor_parent_equal + ics_value1_minor_parent_equal) -> (exists mdr_gap_minor_row_bound. mdr_gap_minor_row_bound + S (r) = (q)) -> (exists mdr_gap_minor_col_bound. mdr_gap_minor_col_bound + S (s) = (q)) -> (exists ff_row_mdm_cell_mdre_minor_cell_ap ff_column_mdm_cell_mdre_minor_cell_ap. (((((exists ff_gap_mdm_lt_mdre_minor_cell_ap_row_before. ff_gap_mdm_lt_mdre_minor_cell_ap_row_before + S (r) = (0)) /\ ff_row_mdm_cell_mdre_minor_cell_ap = r) \/ ((exists ff_gap_mdm_le_mdre_minor_cell_ap_row_after. ff_gap_mdm_le_mdre_minor_cell_ap_row_after + (0) = (r)) /\ ff_row_mdm_cell_mdre_minor_cell_ap = S r))) /\ (((((exists ff_gap_mdm_lt_mdre_minor_cell_ap_column_before. ff_gap_mdm_lt_mdre_minor_cell_ap_column_before + S (s) = (j)) /\ ff_column_mdm_cell_mdre_minor_cell_ap = s) \/ ((exists ff_gap_mdm_le_mdre_minor_cell_ap_column_after. ff_gap_mdm_le_mdre_minor_cell_ap_column_after + (j) = (s)) /\ ff_column_mdm_cell_mdre_minor_cell_ap = S s))) /\ (((exists ff_h_mdm_mdre_minor_cell_ap_source. ff_h_mdm_mdre_minor_cell_ap_source + S (a) = S ((S ((ff_row_mdm_cell_mdre_minor_cell_ap) * (S (q)) + (ff_column_mdm_cell_mdre_minor_cell_ap))) * ac)) /\ exists ff_q_mdm_mdre_minor_cell_ap_source. ab = ff_q_mdm_mdre_minor_cell_ap_source * S ((S ((ff_row_mdm_cell_mdre_minor_cell_ap) * (S (q)) + (ff_column_mdm_cell_mdre_minor_cell_ap))) * ac) + (a)))))) -> (exists ff_row_mdm_cell_mdre_minor_cell_an ff_column_mdm_cell_mdre_minor_cell_an. (((((exists ff_gap_mdm_lt_mdre_minor_cell_an_row_before. ff_gap_mdm_lt_mdre_minor_cell_an_row_before + S (r) = (0)) /\ ff_row_mdm_cell_mdre_minor_cell_an = r) \/ ((exists ff_gap_mdm_le_mdre_minor_cell_an_row_after. ff_gap_mdm_le_mdre_minor_cell_an_row_after + (0) = (r)) /\ ff_row_mdm_cell_mdre_minor_cell_an = S r))) /\ (((((exists ff_gap_mdm_lt_mdre_minor_cell_an_column_before. ff_gap_mdm_lt_mdre_minor_cell_an_column_before + S (s) = (j)) /\ ff_column_mdm_cell_mdre_minor_cell_an = s) \/ ((exists ff_gap_mdm_le_mdre_minor_cell_an_column_after. ff_gap_mdm_le_mdre_minor_cell_an_column_after + (j) = (s)) /\ ff_column_mdm_cell_mdre_minor_cell_an = S s))) /\ (((exists ff_h_mdm_mdre_minor_cell_an_source. ff_h_mdm_mdre_minor_cell_an_source + S (b) = S ((S ((ff_row_mdm_cell_mdre_minor_cell_an) * (S (q)) + (ff_column_mdm_cell_mdre_minor_cell_an))) * bc)) /\ exists ff_q_mdm_mdre_minor_cell_an_source. bb = ff_q_mdm_mdre_minor_cell_an_source * S ((S ((ff_row_mdm_cell_mdre_minor_cell_an) * (S (q)) + (ff_column_mdm_cell_mdre_minor_cell_an))) * bc) + (b)))))) -> (exists ff_row_mdm_cell_mdre_minor_cell_bp ff_column_mdm_cell_mdre_minor_cell_bp. (((((exists ff_gap_mdm_lt_mdre_minor_cell_bp_row_before. ff_gap_mdm_lt_mdre_minor_cell_bp_row_before + S (r) = (0)) /\ ff_row_mdm_cell_mdre_minor_cell_bp = r) \/ ((exists ff_gap_mdm_le_mdre_minor_cell_bp_row_after. ff_gap_mdm_le_mdre_minor_cell_bp_row_after + (0) = (r)) /\ ff_row_mdm_cell_mdre_minor_cell_bp = S r))) /\ (((((exists ff_gap_mdm_lt_mdre_minor_cell_bp_column_before. ff_gap_mdm_lt_mdre_minor_cell_bp_column_before + S (s) = (j)) /\ ff_column_mdm_cell_mdre_minor_cell_bp = s) \/ ((exists ff_gap_mdm_le_mdre_minor_cell_bp_column_after. ff_gap_mdm_le_mdre_minor_cell_bp_column_after + (j) = (s)) /\ ff_column_mdm_cell_mdre_minor_cell_bp = S s))) /\ (((exists ff_h_mdm_mdre_minor_cell_bp_source. ff_h_mdm_mdre_minor_cell_bp_source + S (c) = S ((S ((ff_row_mdm_cell_mdre_minor_cell_bp) * (S (q)) + (ff_column_mdm_cell_mdre_minor_cell_bp))) * ec)) /\ exists ff_q_mdm_mdre_minor_cell_bp_source. eb = ff_q_mdm_mdre_minor_cell_bp_source * S ((S ((ff_row_mdm_cell_mdre_minor_cell_bp) * (S (q)) + (ff_column_mdm_cell_mdre_minor_cell_bp))) * ec) + (c)))))) -> (exists ff_row_mdm_cell_mdre_minor_cell_bn ff_column_mdm_cell_mdre_minor_cell_bn. (((((exists ff_gap_mdm_lt_mdre_minor_cell_bn_row_before. ff_gap_mdm_lt_mdre_minor_cell_bn_row_before + S (r) = (0)) /\ ff_row_mdm_cell_mdre_minor_cell_bn = r) \/ ((exists ff_gap_mdm_le_mdre_minor_cell_bn_row_after. ff_gap_mdm_le_mdre_minor_cell_bn_row_after + (0) = (r)) /\ ff_row_mdm_cell_mdre_minor_cell_bn = S r))) /\ (((((exists ff_gap_mdm_lt_mdre_minor_cell_bn_column_before. ff_gap_mdm_lt_mdre_minor_cell_bn_column_before + S (s) = (j)) /\ ff_column_mdm_cell_mdre_minor_cell_bn = s) \/ ((exists ff_gap_mdm_le_mdre_minor_cell_bn_column_after. ff_gap_mdm_le_mdre_minor_cell_bn_column_after + (j) = (s)) /\ ff_column_mdm_cell_mdre_minor_cell_bn = S s))) /\ (((exists ff_h_mdm_mdre_minor_cell_bn_source. ff_h_mdm_mdre_minor_cell_bn_source + S (d) = S ((S ((ff_row_mdm_cell_mdre_minor_cell_bn) * (S (q)) + (ff_column_mdm_cell_mdre_minor_cell_bn))) * fc)) /\ exists ff_q_mdm_mdre_minor_cell_bn_source. fb = ff_q_mdm_mdre_minor_cell_bn_source * S ((S ((ff_row_mdm_cell_mdre_minor_cell_bn) * (S (q)) + (ff_column_mdm_cell_mdre_minor_cell_bn))) * fc) + (d)))))) -> a + d = c + bConstructive proof overview
Generated structural guide
All four actual cofactor component cells satisfy the parent signed-integer equality at one genuinely shared in-range source position.
The unchanged tactic script uses 3 declared prerequisites and contains 95 exact native proof lines.
Alpha v34 checked-use · first admitted v27 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
matrix_skip_index_bounded Alpha theorem; checked-use authorized DL001A matrix_recursive_flattened_index_bound DL008D matrix_integer_minor_cell_at_sourceDirect 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 (2)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–20
03Fix variables and assumptionsL21–23
04Separate the logical casesL24–27
05Establish hrowL28–35
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply matrix skip index bounded.
- L28
have hrow : exists mdr_gap_minor_parent_row. mdr_gap_minor_parent_row + S (x) = (S q) - L29
specialize matrix_skip_index_bounded (r) - L30
specialize matrix_skip_index_bounded (0) - L31
specialize matrix_skip_index_bounded (x) - L32
specialize matrix_skip_index_bounded (q) - L33
apply matrix_skip_index_bounded - L34
exact hap_witness_witness_left - L35
exact hr
06Establish hcolumnL36–45
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply matrix skip index bounded.
- L36
have hcolumn : exists mdr_gap_minor_parent_col. mdr_gap_minor_parent_col + S (x1) = (S q) - L37
specialize matrix_skip_index_bounded (s) - L38
specialize matrix_skip_index_bounded (j) - L39
specialize matrix_skip_index_bounded (x1) - L40
specialize matrix_skip_index_bounded (q) - L41
apply matrix_skip_index_bounded - L42
exact hap_witness_witness_right_left - L43
exact hs - L44
specialize hequal (x * (S q) + x1) - L45
specialize hequal (a)
07Use earlier factsL46–55
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L46
specialize hequal (b) - L47
specialize hequal (c) - L48
specialize hequal (d) - L49
apply hequal - L50
specialize matrix_recursive_flattened_index_bound (S q) - L51
specialize matrix_recursive_flattened_index_bound (x) - L52
specialize matrix_recursive_flattened_index_bound (x1) - L53
apply matrix_recursive_flattened_index_bound - L54
exact hrow - L55
exact hcolumn
08Use earlier factsL56–65
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L56
exact hap_witness_witness_right_right - L57
specialize matrix_integer_minor_cell_at_source (bb) - L58
specialize matrix_integer_minor_cell_at_source (bc) - L59
specialize matrix_integer_minor_cell_at_source (q) - L60
specialize matrix_integer_minor_cell_at_source (j) - L61
specialize matrix_integer_minor_cell_at_source (r) - L62
specialize matrix_integer_minor_cell_at_source (s) - L63
specialize matrix_integer_minor_cell_at_source (x) - L64
specialize matrix_integer_minor_cell_at_source (x1) - L65
specialize matrix_integer_minor_cell_at_source (b)
09Use earlier factsL66–75
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L66
apply matrix_integer_minor_cell_at_source - L67
exact hap_witness_witness_left - L68
exact hap_witness_witness_right_left - L69
exact han - L70
specialize matrix_integer_minor_cell_at_source (eb) - L71
specialize matrix_integer_minor_cell_at_source (ec) - L72
specialize matrix_integer_minor_cell_at_source (q) - L73
specialize matrix_integer_minor_cell_at_source (j) - L74
specialize matrix_integer_minor_cell_at_source (r) - L75
specialize matrix_integer_minor_cell_at_source (s)
10Use earlier factsL76–85
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L76
specialize matrix_integer_minor_cell_at_source (x) - L77
specialize matrix_integer_minor_cell_at_source (x1) - L78
specialize matrix_integer_minor_cell_at_source (c) - L79
apply matrix_integer_minor_cell_at_source - L80
exact hap_witness_witness_left - L81
exact hap_witness_witness_right_left - L82
exact hbp - L83
specialize matrix_integer_minor_cell_at_source (fb) - L84
specialize matrix_integer_minor_cell_at_source (fc) - L85
specialize matrix_integer_minor_cell_at_source (q)
11Use earlier factsL86–95
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L86
specialize matrix_integer_minor_cell_at_source (j) - L87
specialize matrix_integer_minor_cell_at_source (r) - L88
specialize matrix_integer_minor_cell_at_source (s) - L89
specialize matrix_integer_minor_cell_at_source (x) - L90
specialize matrix_integer_minor_cell_at_source (x1) - L91
specialize matrix_integer_minor_cell_at_source (d) - L92
apply matrix_integer_minor_cell_at_source - L93
exact hap_witness_witness_left - L94
exact hap_witness_witness_right_left - L95
exact hbn
Original exact command ledger · 95 lines
- 0001
intro ab - 0002
intro ac - 0003
intro bb - 0004
intro bc - 0005
intro eb - 0006
intro ec - 0007
intro fb - 0008
intro fc - 0009
intro q - 0010
intro j - 0011
intro r - 0012
intro s - 0013
intro a - 0014
intro b - 0015
intro c - 0016
intro d - 0017
intro hequal - 0018
intro hr - 0019
intro hs - 0020
intro hap - 0021
intro han - 0022
intro hbp - 0023
intro hbn - 0024
cases hap - 0025
cases hap_witness - 0026
cases hap_witness_witness - 0027
cases hap_witness_witness_right - 0028
have hrow : exists mdr_gap_minor_parent_row. mdr_gap_minor_parent_row + S (x) = (S q) - 0029
specialize matrix_skip_index_bounded (r) - 0030
specialize matrix_skip_index_bounded (0) - 0031
specialize matrix_skip_index_bounded (x) - 0032
specialize matrix_skip_index_bounded (q) - 0033
apply matrix_skip_index_bounded - 0034
exact hap_witness_witness_left - 0035
exact hr - 0036
have hcolumn : exists mdr_gap_minor_parent_col. mdr_gap_minor_parent_col + S (x1) = (S q) - 0037
specialize matrix_skip_index_bounded (s) - 0038
specialize matrix_skip_index_bounded (j) - 0039
specialize matrix_skip_index_bounded (x1) - 0040
specialize matrix_skip_index_bounded (q) - 0041
apply matrix_skip_index_bounded - 0042
exact hap_witness_witness_right_left - 0043
exact hs - 0044
specialize hequal (x * (S q) + x1) - 0045
specialize hequal (a) - 0046
specialize hequal (b) - 0047
specialize hequal (c) - 0048
specialize hequal (d) - 0049
apply hequal - 0050
specialize matrix_recursive_flattened_index_bound (S q) - 0051
specialize matrix_recursive_flattened_index_bound (x) - 0052
specialize matrix_recursive_flattened_index_bound (x1) - 0053
apply matrix_recursive_flattened_index_bound - 0054
exact hrow - 0055
exact hcolumn - 0056
exact hap_witness_witness_right_right - 0057
specialize matrix_integer_minor_cell_at_source (bb) - 0058
specialize matrix_integer_minor_cell_at_source (bc) - 0059
specialize matrix_integer_minor_cell_at_source (q) - 0060
specialize matrix_integer_minor_cell_at_source (j) - 0061
specialize matrix_integer_minor_cell_at_source (r) - 0062
specialize matrix_integer_minor_cell_at_source (s) - 0063
specialize matrix_integer_minor_cell_at_source (x) - 0064
specialize matrix_integer_minor_cell_at_source (x1) - 0065
specialize matrix_integer_minor_cell_at_source (b) - 0066
apply matrix_integer_minor_cell_at_source - 0067
exact hap_witness_witness_left - 0068
exact hap_witness_witness_right_left - 0069
exact han - 0070
specialize matrix_integer_minor_cell_at_source (eb) - 0071
specialize matrix_integer_minor_cell_at_source (ec) - 0072
specialize matrix_integer_minor_cell_at_source (q) - 0073
specialize matrix_integer_minor_cell_at_source (j) - 0074
specialize matrix_integer_minor_cell_at_source (r) - 0075
specialize matrix_integer_minor_cell_at_source (s) - 0076
specialize matrix_integer_minor_cell_at_source (x) - 0077
specialize matrix_integer_minor_cell_at_source (x1) - 0078
specialize matrix_integer_minor_cell_at_source (c) - 0079
apply matrix_integer_minor_cell_at_source - 0080
exact hap_witness_witness_left - 0081
exact hap_witness_witness_right_left - 0082
exact hbp - 0083
specialize matrix_integer_minor_cell_at_source (fb) - 0084
specialize matrix_integer_minor_cell_at_source (fc) - 0085
specialize matrix_integer_minor_cell_at_source (q) - 0086
specialize matrix_integer_minor_cell_at_source (j) - 0087
specialize matrix_integer_minor_cell_at_source (r) - 0088
specialize matrix_integer_minor_cell_at_source (s) - 0089
specialize matrix_integer_minor_cell_at_source (x) - 0090
specialize matrix_integer_minor_cell_at_source (x1) - 0091
specialize matrix_integer_minor_cell_at_source (d) - 0092
apply matrix_integer_minor_cell_at_source - 0093
exact hap_witness_witness_left - 0094
exact hap_witness_witness_right_left - 0095
exact hbn