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 mb mc sb sc l n m. (exists ff_code_dot_value ff_scale_dot_value. ((forall fpmp_index_dot_value_pointwise fpmp_left_dot_value_pointwise fpmp_right_dot_value_pointwise fpmp_target_dot_value_pointwise. (exists fpmp_gap_dot_value_pointwise. fpmp_gap_dot_value_pointwise + S fpmp_index_dot_value_pointwise = l) -> (((exists ff_h_fpmp_dot_value_pointwise_left. ff_h_fpmp_dot_value_pointwise_left + S (fpmp_left_dot_value_pointwise) = S ((S (fpmp_index_dot_value_pointwise)) * mc)) /\ exists ff_q_fpmp_dot_value_pointwise_left. mb = ff_q_fpmp_dot_value_pointwise_left * S ((S (fpmp_index_dot_value_pointwise)) * mc) + (fpmp_left_dot_value_pointwise))) -> (((exists ff_h_fpmp_dot_value_pointwise_right. ff_h_fpmp_dot_value_pointwise_right + S (fpmp_right_dot_value_pointwise) = S ((S (fpmp_index_dot_value_pointwise)) * sc)) /\ exists ff_q_fpmp_dot_value_pointwise_right. sb = ff_q_fpmp_dot_value_pointwise_right * S ((S (fpmp_index_dot_value_pointwise)) * sc) + (fpmp_right_dot_value_pointwise))) -> (((exists ff_h_fpmp_dot_value_pointwise_target. ff_h_fpmp_dot_value_pointwise_target + S (fpmp_target_dot_value_pointwise) = S ((S (fpmp_index_dot_value_pointwise)) * ff_scale_dot_value)) /\ exists ff_q_fpmp_dot_value_pointwise_target. ff_code_dot_value = ff_q_fpmp_dot_value_pointwise_target * S ((S (fpmp_index_dot_value_pointwise)) * ff_scale_dot_value) + (fpmp_target_dot_value_pointwise))) -> fpmp_target_dot_value_pointwise = fpmp_left_dot_value_pointwise * fpmp_right_dot_value_pointwise) /\ (exists ff_u_dot_value_sum ff_v_dot_value_sum. ((((exists ff_h_dot_value_sum_start. ff_h_dot_value_sum_start + S (0) = S ((S (0)) * ff_v_dot_value_sum)) /\ exists ff_q_dot_value_sum_start. ff_u_dot_value_sum = ff_q_dot_value_sum_start * S ((S (0)) * ff_v_dot_value_sum) + (0))) /\ ((((exists ff_h_dot_value_sum_terminal. ff_h_dot_value_sum_terminal + S (n) = S ((S (l)) * ff_v_dot_value_sum)) /\ exists ff_q_dot_value_sum_terminal. ff_u_dot_value_sum = ff_q_dot_value_sum_terminal * S ((S (l)) * ff_v_dot_value_sum) + (n))) /\ forall ff_i_dot_value_sum. (exists ff_lt_dot_value_sum_bound. ff_lt_dot_value_sum_bound + S ff_i_dot_value_sum = l) -> exists ff_a_dot_value_sum ff_r_dot_value_sum ff_s_dot_value_sum. ((((exists ff_h_dot_value_sum_summand. ff_h_dot_value_sum_summand + S (ff_a_dot_value_sum) = S ((S (ff_i_dot_value_sum)) * ff_scale_dot_value)) /\ exists ff_q_dot_value_sum_summand. ff_code_dot_value = ff_q_dot_value_sum_summand * S ((S (ff_i_dot_value_sum)) * ff_scale_dot_value) + (ff_a_dot_value_sum))) /\ ((((exists ff_h_dot_value_sum_partial. ff_h_dot_value_sum_partial + S (ff_r_dot_value_sum) = S ((S (ff_i_dot_value_sum)) * ff_v_dot_value_sum)) /\ exists ff_q_dot_value_sum_partial. ff_u_dot_value_sum = ff_q_dot_value_sum_partial * S ((S (ff_i_dot_value_sum)) * ff_v_dot_value_sum) + (ff_r_dot_value_sum))) /\ ((((exists ff_h_dot_value_sum_successor. ff_h_dot_value_sum_successor + S (ff_s_dot_value_sum) = S ((S (S ff_i_dot_value_sum)) * ff_v_dot_value_sum)) /\ exists ff_q_dot_value_sum_successor. ff_u_dot_value_sum = ff_q_dot_value_sum_successor * S ((S (S ff_i_dot_value_sum)) * ff_v_dot_value_sum) + (ff_s_dot_value_sum))) /\ ff_s_dot_value_sum = ff_r_dot_value_sum + ff_a_dot_value_sum)))))))) -> (exists ff_code_dot_other ff_scale_dot_other. ((forall fpmp_index_dot_other_pointwise fpmp_left_dot_other_pointwise fpmp_right_dot_other_pointwise fpmp_target_dot_other_pointwise. (exists fpmp_gap_dot_other_pointwise. fpmp_gap_dot_other_pointwise + S fpmp_index_dot_other_pointwise = l) -> (((exists ff_h_fpmp_dot_other_pointwise_left. ff_h_fpmp_dot_other_pointwise_left + S (fpmp_left_dot_other_pointwise) = S ((S (fpmp_index_dot_other_pointwise)) * mc)) /\ exists ff_q_fpmp_dot_other_pointwise_left. mb = ff_q_fpmp_dot_other_pointwise_left * S ((S (fpmp_index_dot_other_pointwise)) * mc) + (fpmp_left_dot_other_pointwise))) -> (((exists ff_h_fpmp_dot_other_pointwise_right. ff_h_fpmp_dot_other_pointwise_right + S (fpmp_right_dot_other_pointwise) = S ((S (fpmp_index_dot_other_pointwise)) * sc)) /\ exists ff_q_fpmp_dot_other_pointwise_right. sb = ff_q_fpmp_dot_other_pointwise_right * S ((S (fpmp_index_dot_other_pointwise)) * sc) + (fpmp_right_dot_other_pointwise))) -> (((exists ff_h_fpmp_dot_other_pointwise_target. ff_h_fpmp_dot_other_pointwise_target + S (fpmp_target_dot_other_pointwise) = S ((S (fpmp_index_dot_other_pointwise)) * ff_scale_dot_other)) /\ exists ff_q_fpmp_dot_other_pointwise_target. ff_code_dot_other = ff_q_fpmp_dot_other_pointwise_target * S ((S (fpmp_index_dot_other_pointwise)) * ff_scale_dot_other) + (fpmp_target_dot_other_pointwise))) -> fpmp_target_dot_other_pointwise = fpmp_left_dot_other_pointwise * fpmp_right_dot_other_pointwise) /\ (exists ff_u_dot_other_sum ff_v_dot_other_sum. ((((exists ff_h_dot_other_sum_start. ff_h_dot_other_sum_start + S (0) = S ((S (0)) * ff_v_dot_other_sum)) /\ exists ff_q_dot_other_sum_start. ff_u_dot_other_sum = ff_q_dot_other_sum_start * S ((S (0)) * ff_v_dot_other_sum) + (0))) /\ ((((exists ff_h_dot_other_sum_terminal. ff_h_dot_other_sum_terminal + S (m) = S ((S (l)) * ff_v_dot_other_sum)) /\ exists ff_q_dot_other_sum_terminal. ff_u_dot_other_sum = ff_q_dot_other_sum_terminal * S ((S (l)) * ff_v_dot_other_sum) + (m))) /\ forall ff_i_dot_other_sum. (exists ff_lt_dot_other_sum_bound. ff_lt_dot_other_sum_bound + S ff_i_dot_other_sum = l) -> exists ff_a_dot_other_sum ff_r_dot_other_sum ff_s_dot_other_sum. ((((exists ff_h_dot_other_sum_summand. ff_h_dot_other_sum_summand + S (ff_a_dot_other_sum) = S ((S (ff_i_dot_other_sum)) * ff_scale_dot_other)) /\ exists ff_q_dot_other_sum_summand. ff_code_dot_other = ff_q_dot_other_sum_summand * S ((S (ff_i_dot_other_sum)) * ff_scale_dot_other) + (ff_a_dot_other_sum))) /\ ((((exists ff_h_dot_other_sum_partial. ff_h_dot_other_sum_partial + S (ff_r_dot_other_sum) = S ((S (ff_i_dot_other_sum)) * ff_v_dot_other_sum)) /\ exists ff_q_dot_other_sum_partial. ff_u_dot_other_sum = ff_q_dot_other_sum_partial * S ((S (ff_i_dot_other_sum)) * ff_v_dot_other_sum) + (ff_r_dot_other_sum))) /\ ((((exists ff_h_dot_other_sum_successor. ff_h_dot_other_sum_successor + S (ff_s_dot_other_sum) = S ((S (S ff_i_dot_other_sum)) * ff_v_dot_other_sum)) /\ exists ff_q_dot_other_sum_successor. ff_u_dot_other_sum = ff_q_dot_other_sum_successor * S ((S (S ff_i_dot_other_sum)) * ff_v_dot_other_sum) + (ff_s_dot_other_sum))) /\ ff_s_dot_other_sum = ff_r_dot_other_sum + ff_a_dot_other_sum)))))))) -> n = mConstructive proof overview
Generated structural guide
The exact finite dot-product value is independent of its coding witness.
The unchanged tactic script uses 3 declared prerequisites and contains 82 exact native proof lines.
Alpha v34 checked-use · first admitted v20 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
beta_at_exists Stable theorem; checked-use authorized beta_sum_transport_prefix Alpha theorem; checked-use authorized beta_sum_functional Stable 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–9
02Separate the logical casesL10–15
03Establish htransportL16–25
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta sum transport prefix.
- L16
have htransport : Sum(x2,x3,l,n)Definitions: Sum - L17
specialize beta_sum_transport_prefix x - L18
specialize beta_sum_transport_prefix x1 - L19
specialize beta_sum_transport_prefix x2 - L20
specialize beta_sum_transport_prefix x3 - L21
specialize beta_sum_transport_prefix l - L22
specialize beta_sum_transport_prefix n - L23
apply beta_sum_transport_prefix - L24
exact hn_witness_witness_right - L25
intro i
04Fix variables and assumptionsL26–28
05Establish hleftL29–33
Establish this local claim before using it. It is not an additional assumption.
06Separate the logical casesL34–34
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L34
cases hleft
07Establish hrightL35–39
Establish this local claim before using it. It is not an additional assumption.
08Separate the logical casesL40–40
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L40
cases hright
09Establish htargetL41–45
Establish this local claim before using it. It is not an additional assumption.
10Separate the logical casesL46–46
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L46
cases htarget
11Establish hfirstL47–56
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hn witness witness left.
12Establish hsecondL57–66
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hm witness witness left.
- L57
have hsecond : x6 = x4 * x5 - L58
specialize hm_witness_witness_left i - L59
specialize hm_witness_witness_left x4 - L60
specialize hm_witness_witness_left x5 - L61
specialize hm_witness_witness_left x6 - L62
apply hm_witness_witness_left - L63
exact hi - L64
exact hleft_witness - L65
exact hright_witness - L66
exact htarget_witness
13Establish heqL67–76
Original exact command ledger · 82 lines
- 0001
intro mb - 0002
intro mc - 0003
intro sb - 0004
intro sc - 0005
intro l - 0006
intro n - 0007
intro m - 0008
intro hn - 0009
intro hm - 0010
cases hn - 0011
cases hn_witness - 0012
cases hn_witness_witness - 0013
cases hm - 0014
cases hm_witness - 0015
cases hm_witness_witness - 0016
have htransport : exists ff_u_dot_transport ff_v_dot_transport. ((((exists ff_h_dot_transport_start. ff_h_dot_transport_start + S (0) = S ((S (0)) * ff_v_dot_transport)) /\ exists ff_q_dot_transport_start. ff_u_dot_transport = ff_q_dot_transport_start * S ((S (0)) * ff_v_dot_transport) + (0))) /\ ((((exists ff_h_dot_transport_terminal. ff_h_dot_transport_terminal + S (n) = S ((S (l)) * ff_v_dot_transport)) /\ exists ff_q_dot_transport_terminal. ff_u_dot_transport = ff_q_dot_transport_terminal * S ((S (l)) * ff_v_dot_transport) + (n))) /\ forall ff_i_dot_transport. (exists ff_lt_dot_transport_bound. ff_lt_dot_transport_bound + S ff_i_dot_transport = l) -> exists ff_a_dot_transport ff_r_dot_transport ff_s_dot_transport. ((((exists ff_h_dot_transport_summand. ff_h_dot_transport_summand + S (ff_a_dot_transport) = S ((S (ff_i_dot_transport)) * x3)) /\ exists ff_q_dot_transport_summand. x2 = ff_q_dot_transport_summand * S ((S (ff_i_dot_transport)) * x3) + (ff_a_dot_transport))) /\ ((((exists ff_h_dot_transport_partial. ff_h_dot_transport_partial + S (ff_r_dot_transport) = S ((S (ff_i_dot_transport)) * ff_v_dot_transport)) /\ exists ff_q_dot_transport_partial. ff_u_dot_transport = ff_q_dot_transport_partial * S ((S (ff_i_dot_transport)) * ff_v_dot_transport) + (ff_r_dot_transport))) /\ ((((exists ff_h_dot_transport_successor. ff_h_dot_transport_successor + S (ff_s_dot_transport) = S ((S (S ff_i_dot_transport)) * ff_v_dot_transport)) /\ exists ff_q_dot_transport_successor. ff_u_dot_transport = ff_q_dot_transport_successor * S ((S (S ff_i_dot_transport)) * ff_v_dot_transport) + (ff_s_dot_transport))) /\ ff_s_dot_transport = ff_r_dot_transport + ff_a_dot_transport))))) - 0017
specialize beta_sum_transport_prefix x - 0018
specialize beta_sum_transport_prefix x1 - 0019
specialize beta_sum_transport_prefix x2 - 0020
specialize beta_sum_transport_prefix x3 - 0021
specialize beta_sum_transport_prefix l - 0022
specialize beta_sum_transport_prefix n - 0023
apply beta_sum_transport_prefix - 0024
exact hn_witness_witness_right - 0025
intro i - 0026
intro a - 0027
intro hi - 0028
intro ha - 0029
have hleft : exists z. ((exists fs_h_dot_left. fs_h_dot_left + S (z) = S ((S (i)) * mc)) /\ exists fs_q_dot_left. mb = fs_q_dot_left * S ((S (i)) * mc) + (z)) - 0030
specialize beta_at_exists mb - 0031
specialize beta_at_exists mc - 0032
specialize beta_at_exists i - 0033
exact beta_at_exists - 0034
cases hleft - 0035
have hright : exists z. ((exists fs_h_dot_right. fs_h_dot_right + S (z) = S ((S (i)) * sc)) /\ exists fs_q_dot_right. sb = fs_q_dot_right * S ((S (i)) * sc) + (z)) - 0036
specialize beta_at_exists sb - 0037
specialize beta_at_exists sc - 0038
specialize beta_at_exists i - 0039
exact beta_at_exists - 0040
cases hright - 0041
have htarget : exists z. ((exists fs_h_dot_target. fs_h_dot_target + S (z) = S ((S (i)) * x3)) /\ exists fs_q_dot_target. x2 = fs_q_dot_target * S ((S (i)) * x3) + (z)) - 0042
specialize beta_at_exists x2 - 0043
specialize beta_at_exists x3 - 0044
specialize beta_at_exists i - 0045
exact beta_at_exists - 0046
cases htarget - 0047
have hfirst : a = x4 * x5 - 0048
specialize hn_witness_witness_left i - 0049
specialize hn_witness_witness_left x4 - 0050
specialize hn_witness_witness_left x5 - 0051
specialize hn_witness_witness_left a - 0052
apply hn_witness_witness_left - 0053
exact hi - 0054
exact hleft_witness - 0055
exact hright_witness - 0056
exact ha - 0057
have hsecond : x6 = x4 * x5 - 0058
specialize hm_witness_witness_left i - 0059
specialize hm_witness_witness_left x4 - 0060
specialize hm_witness_witness_left x5 - 0061
specialize hm_witness_witness_left x6 - 0062
apply hm_witness_witness_left - 0063
exact hi - 0064
exact hleft_witness - 0065
exact hright_witness - 0066
exact htarget_witness - 0067
have heq : a = x6 - 0068
trans x4 * x5 - 0069
exact hfirst - 0070
symm - 0071
exact hsecond - 0072
rewrite heq - 0073
rewrite heq - 0074
exact htarget_witness - 0075
specialize beta_sum_functional x2 - 0076
specialize beta_sum_functional x3 - 0077
specialize beta_sum_functional l - 0078
specialize beta_sum_functional n - 0079
specialize beta_sum_functional m - 0080
apply beta_sum_functional - 0081
exact htransport - 0082
exact hm_witness_witness_right
Separate complete second-wave branches: Full T13 proof · Alpha v27.