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 N ell k. (exists pc_le_cheb_lower_positive. pc_le_cheb_lower_positive + (2) = (N)) -> ((((N) = 0 /\ (ell) = 1) \/ exists ff_exponent_bl_pc_cheb_lower_length ff_lower_bl_pc_cheb_lower_length ff_upper_bl_pc_cheb_lower_length. (((ell) = S ff_exponent_bl_pc_cheb_lower_length) /\ ((exists ff_positive_bl_pc_cheb_lower_length. ff_positive_bl_pc_cheb_lower_length + 1 = (N)) /\ ((exists pa_b_bl_pc_cheb_lower_length_lower pa_c_bl_pc_cheb_lower_length_lower. ((forall pa_i_bl_pc_cheb_lower_length_lower_repeat. (exists pa_lt_bl_pc_cheb_lower_length_lower_repeat_bound. pa_lt_bl_pc_cheb_lower_length_lower_repeat_bound + S pa_i_bl_pc_cheb_lower_length_lower_repeat = ff_exponent_bl_pc_cheb_lower_length) -> (((exists pa_h_bl_pc_cheb_lower_length_lower_repeat_decoded. pa_h_bl_pc_cheb_lower_length_lower_repeat_decoded + S (2) = S ((S (pa_i_bl_pc_cheb_lower_length_lower_repeat)) * pa_c_bl_pc_cheb_lower_length_lower)) /\ exists pa_q_bl_pc_cheb_lower_length_lower_repeat_decoded. pa_b_bl_pc_cheb_lower_length_lower = pa_q_bl_pc_cheb_lower_length_lower_repeat_decoded * S ((S (pa_i_bl_pc_cheb_lower_length_lower_repeat)) * pa_c_bl_pc_cheb_lower_length_lower) + (2)))) /\ (exists pa_u_bl_pc_cheb_lower_length_lower_product pa_v_bl_pc_cheb_lower_length_lower_product. ((((exists pa_h_bl_pc_cheb_lower_length_lower_product_start. pa_h_bl_pc_cheb_lower_length_lower_product_start + S (1) = S ((S (0)) * pa_v_bl_pc_cheb_lower_length_lower_product)) /\ exists pa_q_bl_pc_cheb_lower_length_lower_product_start. pa_u_bl_pc_cheb_lower_length_lower_product = pa_q_bl_pc_cheb_lower_length_lower_product_start * S ((S (0)) * pa_v_bl_pc_cheb_lower_length_lower_product) + (1))) /\ ((((exists pa_h_bl_pc_cheb_lower_length_lower_product_terminal. pa_h_bl_pc_cheb_lower_length_lower_product_terminal + S (ff_lower_bl_pc_cheb_lower_length) = S ((S (ff_exponent_bl_pc_cheb_lower_length)) * pa_v_bl_pc_cheb_lower_length_lower_product)) /\ exists pa_q_bl_pc_cheb_lower_length_lower_product_terminal. pa_u_bl_pc_cheb_lower_length_lower_product = pa_q_bl_pc_cheb_lower_length_lower_product_terminal * S ((S (ff_exponent_bl_pc_cheb_lower_length)) * pa_v_bl_pc_cheb_lower_length_lower_product) + (ff_lower_bl_pc_cheb_lower_length))) /\ forall pa_i_bl_pc_cheb_lower_length_lower_product. (exists pa_lt_bl_pc_cheb_lower_length_lower_product_bound. pa_lt_bl_pc_cheb_lower_length_lower_product_bound + S pa_i_bl_pc_cheb_lower_length_lower_product = ff_exponent_bl_pc_cheb_lower_length) -> exists pa_p_bl_pc_cheb_lower_length_lower_product pa_r_bl_pc_cheb_lower_length_lower_product pa_s_bl_pc_cheb_lower_length_lower_product. ((((exists pa_h_bl_pc_cheb_lower_length_lower_product_factor. pa_h_bl_pc_cheb_lower_length_lower_product_factor + S (pa_p_bl_pc_cheb_lower_length_lower_product) = S ((S (pa_i_bl_pc_cheb_lower_length_lower_product)) * pa_c_bl_pc_cheb_lower_length_lower)) /\ exists pa_q_bl_pc_cheb_lower_length_lower_product_factor. pa_b_bl_pc_cheb_lower_length_lower = pa_q_bl_pc_cheb_lower_length_lower_product_factor * S ((S (pa_i_bl_pc_cheb_lower_length_lower_product)) * pa_c_bl_pc_cheb_lower_length_lower) + (pa_p_bl_pc_cheb_lower_length_lower_product))) /\ ((((exists pa_h_bl_pc_cheb_lower_length_lower_product_partial. pa_h_bl_pc_cheb_lower_length_lower_product_partial + S (pa_r_bl_pc_cheb_lower_length_lower_product) = S ((S (pa_i_bl_pc_cheb_lower_length_lower_product)) * pa_v_bl_pc_cheb_lower_length_lower_product)) /\ exists pa_q_bl_pc_cheb_lower_length_lower_product_partial. pa_u_bl_pc_cheb_lower_length_lower_product = pa_q_bl_pc_cheb_lower_length_lower_product_partial * S ((S (pa_i_bl_pc_cheb_lower_length_lower_product)) * pa_v_bl_pc_cheb_lower_length_lower_product) + (pa_r_bl_pc_cheb_lower_length_lower_product))) /\ ((((exists pa_h_bl_pc_cheb_lower_length_lower_product_successor. pa_h_bl_pc_cheb_lower_length_lower_product_successor + S (pa_s_bl_pc_cheb_lower_length_lower_product) = S ((S (S pa_i_bl_pc_cheb_lower_length_lower_product)) * pa_v_bl_pc_cheb_lower_length_lower_product)) /\ exists pa_q_bl_pc_cheb_lower_length_lower_product_successor. pa_u_bl_pc_cheb_lower_length_lower_product = pa_q_bl_pc_cheb_lower_length_lower_product_successor * S ((S (S pa_i_bl_pc_cheb_lower_length_lower_product)) * pa_v_bl_pc_cheb_lower_length_lower_product) + (pa_s_bl_pc_cheb_lower_length_lower_product))) /\ pa_s_bl_pc_cheb_lower_length_lower_product = pa_r_bl_pc_cheb_lower_length_lower_product * pa_p_bl_pc_cheb_lower_length_lower_product)))))))) /\ ((exists pa_b_bl_pc_cheb_lower_length_upper pa_c_bl_pc_cheb_lower_length_upper. ((forall pa_i_bl_pc_cheb_lower_length_upper_repeat. (exists pa_lt_bl_pc_cheb_lower_length_upper_repeat_bound. pa_lt_bl_pc_cheb_lower_length_upper_repeat_bound + S pa_i_bl_pc_cheb_lower_length_upper_repeat = ell) -> (((exists pa_h_bl_pc_cheb_lower_length_upper_repeat_decoded. pa_h_bl_pc_cheb_lower_length_upper_repeat_decoded + S (2) = S ((S (pa_i_bl_pc_cheb_lower_length_upper_repeat)) * pa_c_bl_pc_cheb_lower_length_upper)) /\ exists pa_q_bl_pc_cheb_lower_length_upper_repeat_decoded. pa_b_bl_pc_cheb_lower_length_upper = pa_q_bl_pc_cheb_lower_length_upper_repeat_decoded * S ((S (pa_i_bl_pc_cheb_lower_length_upper_repeat)) * pa_c_bl_pc_cheb_lower_length_upper) + (2)))) /\ (exists pa_u_bl_pc_cheb_lower_length_upper_product pa_v_bl_pc_cheb_lower_length_upper_product. ((((exists pa_h_bl_pc_cheb_lower_length_upper_product_start. pa_h_bl_pc_cheb_lower_length_upper_product_start + S (1) = S ((S (0)) * pa_v_bl_pc_cheb_lower_length_upper_product)) /\ exists pa_q_bl_pc_cheb_lower_length_upper_product_start. pa_u_bl_pc_cheb_lower_length_upper_product = pa_q_bl_pc_cheb_lower_length_upper_product_start * S ((S (0)) * pa_v_bl_pc_cheb_lower_length_upper_product) + (1))) /\ ((((exists pa_h_bl_pc_cheb_lower_length_upper_product_terminal. pa_h_bl_pc_cheb_lower_length_upper_product_terminal + S (ff_upper_bl_pc_cheb_lower_length) = S ((S (ell)) * pa_v_bl_pc_cheb_lower_length_upper_product)) /\ exists pa_q_bl_pc_cheb_lower_length_upper_product_terminal. pa_u_bl_pc_cheb_lower_length_upper_product = pa_q_bl_pc_cheb_lower_length_upper_product_terminal * S ((S (ell)) * pa_v_bl_pc_cheb_lower_length_upper_product) + (ff_upper_bl_pc_cheb_lower_length))) /\ forall pa_i_bl_pc_cheb_lower_length_upper_product. (exists pa_lt_bl_pc_cheb_lower_length_upper_product_bound. pa_lt_bl_pc_cheb_lower_length_upper_product_bound + S pa_i_bl_pc_cheb_lower_length_upper_product = ell) -> exists pa_p_bl_pc_cheb_lower_length_upper_product pa_r_bl_pc_cheb_lower_length_upper_product pa_s_bl_pc_cheb_lower_length_upper_product. ((((exists pa_h_bl_pc_cheb_lower_length_upper_product_factor. pa_h_bl_pc_cheb_lower_length_upper_product_factor + S (pa_p_bl_pc_cheb_lower_length_upper_product) = S ((S (pa_i_bl_pc_cheb_lower_length_upper_product)) * pa_c_bl_pc_cheb_lower_length_upper)) /\ exists pa_q_bl_pc_cheb_lower_length_upper_product_factor. pa_b_bl_pc_cheb_lower_length_upper = pa_q_bl_pc_cheb_lower_length_upper_product_factor * S ((S (pa_i_bl_pc_cheb_lower_length_upper_product)) * pa_c_bl_pc_cheb_lower_length_upper) + (pa_p_bl_pc_cheb_lower_length_upper_product))) /\ ((((exists pa_h_bl_pc_cheb_lower_length_upper_product_partial. pa_h_bl_pc_cheb_lower_length_upper_product_partial + S (pa_r_bl_pc_cheb_lower_length_upper_product) = S ((S (pa_i_bl_pc_cheb_lower_length_upper_product)) * pa_v_bl_pc_cheb_lower_length_upper_product)) /\ exists pa_q_bl_pc_cheb_lower_length_upper_product_partial. pa_u_bl_pc_cheb_lower_length_upper_product = pa_q_bl_pc_cheb_lower_length_upper_product_partial * S ((S (pa_i_bl_pc_cheb_lower_length_upper_product)) * pa_v_bl_pc_cheb_lower_length_upper_product) + (pa_r_bl_pc_cheb_lower_length_upper_product))) /\ ((((exists pa_h_bl_pc_cheb_lower_length_upper_product_successor. pa_h_bl_pc_cheb_lower_length_upper_product_successor + S (pa_s_bl_pc_cheb_lower_length_upper_product) = S ((S (S pa_i_bl_pc_cheb_lower_length_upper_product)) * pa_v_bl_pc_cheb_lower_length_upper_product)) /\ exists pa_q_bl_pc_cheb_lower_length_upper_product_successor. pa_u_bl_pc_cheb_lower_length_upper_product = pa_q_bl_pc_cheb_lower_length_upper_product_successor * S ((S (S pa_i_bl_pc_cheb_lower_length_upper_product)) * pa_v_bl_pc_cheb_lower_length_upper_product) + (pa_s_bl_pc_cheb_lower_length_upper_product))) /\ pa_s_bl_pc_cheb_lower_length_upper_product = pa_r_bl_pc_cheb_lower_length_upper_product * pa_p_bl_pc_cheb_lower_length_upper_product)))))))) /\ ((exists ff_lower_gap_bl_pc_cheb_lower_length. ff_lower_gap_bl_pc_cheb_lower_length + (ff_lower_bl_pc_cheb_lower_length) = (N)) /\ (exists ff_upper_gap_bl_pc_cheb_lower_length. ff_upper_gap_bl_pc_cheb_lower_length + S (N) = (ff_upper_bl_pc_cheb_lower_length))))))))) -> (exists pc_code_cheb_lower_count pc_scale_cheb_lower_count. (forall pc_index_cheb_lower_count_mask. (exists pc_lt_cheb_lower_count_mask_bound. pc_lt_cheb_lower_count_mask_bound + S (pc_index_cheb_lower_count_mask) = (N)) -> exists pc_bit_cheb_lower_count_mask. (((exists fs_h_pc_cheb_lower_count_mask_entry. fs_h_pc_cheb_lower_count_mask_entry + S (pc_bit_cheb_lower_count_mask) = S ((S (pc_index_cheb_lower_count_mask)) * pc_scale_cheb_lower_count)) /\ exists fs_q_pc_cheb_lower_count_mask_entry. pc_code_cheb_lower_count = fs_q_pc_cheb_lower_count_mask_entry * S ((S (pc_index_cheb_lower_count_mask)) * pc_scale_cheb_lower_count) + (pc_bit_cheb_lower_count_mask))) /\ (((((~(S (pc_index_cheb_lower_count_mask) = 1) /\ forall bpr_left_pc_cheb_lower_count_mask_choice_prime bpr_right_pc_cheb_lower_count_mask_choice_prime. S (pc_index_cheb_lower_count_mask) = bpr_left_pc_cheb_lower_count_mask_choice_prime * bpr_right_pc_cheb_lower_count_mask_choice_prime -> bpr_left_pc_cheb_lower_count_mask_choice_prime = 1 \/ bpr_right_pc_cheb_lower_count_mask_choice_prime = 1)) /\ pc_bit_cheb_lower_count_mask = 1) \/ (~((~(S (pc_index_cheb_lower_count_mask) = 1) /\ forall bpr_left_pc_cheb_lower_count_mask_choice_prime bpr_right_pc_cheb_lower_count_mask_choice_prime. S (pc_index_cheb_lower_count_mask) = bpr_left_pc_cheb_lower_count_mask_choice_prime * bpr_right_pc_cheb_lower_count_mask_choice_prime -> bpr_left_pc_cheb_lower_count_mask_choice_prime = 1 \/ bpr_right_pc_cheb_lower_count_mask_choice_prime = 1)) /\ pc_bit_cheb_lower_count_mask = 0)))) /\ (exists fs_u_pc_cheb_lower_count_sum fs_v_pc_cheb_lower_count_sum. ((((exists fs_h_pc_cheb_lower_count_sum_body_start. fs_h_pc_cheb_lower_count_sum_body_start + S (0) = S ((S (0)) * fs_v_pc_cheb_lower_count_sum)) /\ exists fs_q_pc_cheb_lower_count_sum_body_start. fs_u_pc_cheb_lower_count_sum = fs_q_pc_cheb_lower_count_sum_body_start * S ((S (0)) * fs_v_pc_cheb_lower_count_sum) + (0))) /\ ((((exists fs_h_pc_cheb_lower_count_sum_body_terminal. fs_h_pc_cheb_lower_count_sum_body_terminal + S (k) = S ((S (N)) * fs_v_pc_cheb_lower_count_sum)) /\ exists fs_q_pc_cheb_lower_count_sum_body_terminal. fs_u_pc_cheb_lower_count_sum = fs_q_pc_cheb_lower_count_sum_body_terminal * S ((S (N)) * fs_v_pc_cheb_lower_count_sum) + (k))) /\ forall fs_i_pc_cheb_lower_count_sum_body_steps. (exists fs_lt_pc_cheb_lower_count_sum_body_steps_bound. fs_lt_pc_cheb_lower_count_sum_body_steps_bound + S fs_i_pc_cheb_lower_count_sum_body_steps = N) -> exists fs_a_pc_cheb_lower_count_sum_body_steps fs_r_pc_cheb_lower_count_sum_body_steps fs_s_pc_cheb_lower_count_sum_body_steps. ((((exists fs_h_pc_cheb_lower_count_sum_body_steps_summand. fs_h_pc_cheb_lower_count_sum_body_steps_summand + S (fs_a_pc_cheb_lower_count_sum_body_steps) = S ((S (fs_i_pc_cheb_lower_count_sum_body_steps)) * pc_scale_cheb_lower_count)) /\ exists fs_q_pc_cheb_lower_count_sum_body_steps_summand. pc_code_cheb_lower_count = fs_q_pc_cheb_lower_count_sum_body_steps_summand * S ((S (fs_i_pc_cheb_lower_count_sum_body_steps)) * pc_scale_cheb_lower_count) + (fs_a_pc_cheb_lower_count_sum_body_steps))) /\ ((((exists fs_h_pc_cheb_lower_count_sum_body_steps_partial. fs_h_pc_cheb_lower_count_sum_body_steps_partial + S (fs_r_pc_cheb_lower_count_sum_body_steps) = S ((S (fs_i_pc_cheb_lower_count_sum_body_steps)) * fs_v_pc_cheb_lower_count_sum)) /\ exists fs_q_pc_cheb_lower_count_sum_body_steps_partial. fs_u_pc_cheb_lower_count_sum = fs_q_pc_cheb_lower_count_sum_body_steps_partial * S ((S (fs_i_pc_cheb_lower_count_sum_body_steps)) * fs_v_pc_cheb_lower_count_sum) + (fs_r_pc_cheb_lower_count_sum_body_steps))) /\ ((((exists fs_h_pc_cheb_lower_count_sum_body_steps_successor. fs_h_pc_cheb_lower_count_sum_body_steps_successor + S (fs_s_pc_cheb_lower_count_sum_body_steps) = S ((S (S fs_i_pc_cheb_lower_count_sum_body_steps)) * fs_v_pc_cheb_lower_count_sum)) /\ exists fs_q_pc_cheb_lower_count_sum_body_steps_successor. fs_u_pc_cheb_lower_count_sum = fs_q_pc_cheb_lower_count_sum_body_steps_successor * S ((S (S fs_i_pc_cheb_lower_count_sum_body_steps)) * fs_v_pc_cheb_lower_count_sum) + (fs_s_pc_cheb_lower_count_sum_body_steps))) /\ fs_s_pc_cheb_lower_count_sum_body_steps = fs_r_pc_cheb_lower_count_sum_body_steps + fs_a_pc_cheb_lower_count_sum_body_steps))))))) -> (exists pc_le_cheb_lower_result. pc_le_cheb_lower_result + (N) = (8 * k * ell))Constructive proof overview
Generated structural guide
The exact effective Chebyshev lower bound N <= 8*pi(N)*BitLen(N), including every N at least two.
The unchanged tactic script uses 10 declared prerequisites and contains 56 exact native proof lines.
Alpha v34 checked-use · first admitted v27 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
le_or_lt Stable theorem; checked-use authorized PC002F prime_count_chebyshev_lower_large PC000B prime_count_positive_above_one PC0024 binary_length_positive le_mul_of_one_le_right Alpha theorem; checked-use authorized le_trans Stable theorem; checked-use authorized mul_le_mul_left Stable theorem; checked-use authorized mul_one Stable theorem; checked-use authorized mul_assoc Stable theorem; checked-use authorized lt_to_le 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.
Named ingredients (3)
01Fix variables and assumptionsL1–6
02Establish hcL7–10
03Separate the logical casesL11–11
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L11
cases hc
04Use earlier factsL12–18
Instantiate or apply named facts and discharge the corresponding proof obligations.
05Establish hpositiveL19–28
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le trans.
06Use earlier factsL29–35
Instantiate or apply named facts and discharge the corresponding proof obligations.
07Establish hscaleL36–41
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul le mul left.
08Establish honeL42–44
09Establish hassocL45–54
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul assoc.
Original exact command ledger · 56 lines
- 0001
intro N - 0002
intro ell - 0003
intro k - 0004
intro hN - 0005
intro hl - 0006
intro hk - 0007
have hc : (exists g. g + 8 = N) \/ (exists g. g + S N = 8) - 0008
specialize le_or_lt 8 - 0009
specialize le_or_lt N - 0010
apply le_or_lt - 0011
cases hc - 0012
specialize prime_count_chebyshev_lower_large N - 0013
specialize prime_count_chebyshev_lower_large ell - 0014
specialize prime_count_chebyshev_lower_large k - 0015
apply prime_count_chebyshev_lower_large - 0016
exact hc_left - 0017
exact hl - 0018
exact hk - 0019
have hpositive : exists g. g + 1 = k * ell - 0020
specialize le_trans 1 - 0021
specialize le_trans k - 0022
specialize le_trans (k * ell) - 0023
apply le_trans - 0024
specialize prime_count_positive_above_one N - 0025
specialize prime_count_positive_above_one k - 0026
apply prime_count_positive_above_one - 0027
exact hN - 0028
exact hk - 0029
specialize le_mul_of_one_le_right k - 0030
specialize le_mul_of_one_le_right ell - 0031
apply le_mul_of_one_le_right - 0032
specialize binary_length_positive N - 0033
specialize binary_length_positive ell - 0034
apply binary_length_positive - 0035
exact hl - 0036
have hscale : exists g. g + 8 * 1 = 8 * (k * ell) - 0037
specialize mul_le_mul_left 1 - 0038
specialize mul_le_mul_left (k * ell) - 0039
specialize mul_le_mul_left 8 - 0040
apply mul_le_mul_left - 0041
exact hpositive - 0042
have hone : 8 * 1 = 8 - 0043
apply mul_one - 0044
rewrite hone at hscale - 0045
have hassoc : (8 * k) * ell = 8 * (k * ell) - 0046
apply mul_assoc - 0047
rewrite hassoc - 0048
specialize le_trans N - 0049
specialize le_trans 8 - 0050
specialize le_trans (8 * (k * ell)) - 0051
apply le_trans - 0052
specialize lt_to_le N - 0053
specialize lt_to_le 8 - 0054
apply lt_to_le - 0055
exact hc_right - 0056
exact hscale