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.
Statement with defined notation
∀ p. ∀ e. ∀ a. PowerDivides(p,e,a) ∨ ¬PowerDivides(p,e,a)Every purple notation token opens its conservative definition. Expanding the displayed statement recovers the exact first-order Peano-arithmetic formula checked by the unchanged kernel.
Definitions used by this theorem
In the theorem statement
2 occurrences
In local proof propositions
3 occurrences
Exact expanded native-PA statement
forall p e a. (exists bpv_result_decision. ((exists ff_b_decision_power ff_c_decision_power. ((forall ff_i_decision_power_repeat. (exists ff_lt_decision_power_repeat_bound. ff_lt_decision_power_repeat_bound + S ff_i_decision_power_repeat = e) -> (((exists ff_h_decision_power_repeat_decoded. ff_h_decision_power_repeat_decoded + S (p) = S ((S (ff_i_decision_power_repeat)) * ff_c_decision_power)) /\ exists ff_q_decision_power_repeat_decoded. ff_b_decision_power = ff_q_decision_power_repeat_decoded * S ((S (ff_i_decision_power_repeat)) * ff_c_decision_power) + (p)))) /\ (exists ff_u_decision_power_product ff_v_decision_power_product. ((((exists ff_h_decision_power_product_start. ff_h_decision_power_product_start + S (1) = S ((S (0)) * ff_v_decision_power_product)) /\ exists ff_q_decision_power_product_start. ff_u_decision_power_product = ff_q_decision_power_product_start * S ((S (0)) * ff_v_decision_power_product) + (1))) /\ ((((exists ff_h_decision_power_product_terminal. ff_h_decision_power_product_terminal + S (bpv_result_decision) = S ((S (e)) * ff_v_decision_power_product)) /\ exists ff_q_decision_power_product_terminal. ff_u_decision_power_product = ff_q_decision_power_product_terminal * S ((S (e)) * ff_v_decision_power_product) + (bpv_result_decision))) /\ forall ff_i_decision_power_product. (exists ff_lt_decision_power_product_bound. ff_lt_decision_power_product_bound + S ff_i_decision_power_product = e) -> exists ff_p_decision_power_product ff_r_decision_power_product ff_s_decision_power_product. ((((exists ff_h_decision_power_product_factor. ff_h_decision_power_product_factor + S (ff_p_decision_power_product) = S ((S (ff_i_decision_power_product)) * ff_c_decision_power)) /\ exists ff_q_decision_power_product_factor. ff_b_decision_power = ff_q_decision_power_product_factor * S ((S (ff_i_decision_power_product)) * ff_c_decision_power) + (ff_p_decision_power_product))) /\ ((((exists ff_h_decision_power_product_partial. ff_h_decision_power_product_partial + S (ff_r_decision_power_product) = S ((S (ff_i_decision_power_product)) * ff_v_decision_power_product)) /\ exists ff_q_decision_power_product_partial. ff_u_decision_power_product = ff_q_decision_power_product_partial * S ((S (ff_i_decision_power_product)) * ff_v_decision_power_product) + (ff_r_decision_power_product))) /\ ((((exists ff_h_decision_power_product_successor. ff_h_decision_power_product_successor + S (ff_s_decision_power_product) = S ((S (S ff_i_decision_power_product)) * ff_v_decision_power_product)) /\ exists ff_q_decision_power_product_successor. ff_u_decision_power_product = ff_q_decision_power_product_successor * S ((S (S ff_i_decision_power_product)) * ff_v_decision_power_product) + (ff_s_decision_power_product))) /\ ff_s_decision_power_product = ff_r_decision_power_product * ff_p_decision_power_product)))))))) /\ (exists bpv_factor_decision_divides. a = bpv_result_decision * bpv_factor_decision_divides))) \/ ~(exists bpv_result_decision. ((exists ff_b_decision_power ff_c_decision_power. ((forall ff_i_decision_power_repeat. (exists ff_lt_decision_power_repeat_bound. ff_lt_decision_power_repeat_bound + S ff_i_decision_power_repeat = e) -> (((exists ff_h_decision_power_repeat_decoded. ff_h_decision_power_repeat_decoded + S (p) = S ((S (ff_i_decision_power_repeat)) * ff_c_decision_power)) /\ exists ff_q_decision_power_repeat_decoded. ff_b_decision_power = ff_q_decision_power_repeat_decoded * S ((S (ff_i_decision_power_repeat)) * ff_c_decision_power) + (p)))) /\ (exists ff_u_decision_power_product ff_v_decision_power_product. ((((exists ff_h_decision_power_product_start. ff_h_decision_power_product_start + S (1) = S ((S (0)) * ff_v_decision_power_product)) /\ exists ff_q_decision_power_product_start. ff_u_decision_power_product = ff_q_decision_power_product_start * S ((S (0)) * ff_v_decision_power_product) + (1))) /\ ((((exists ff_h_decision_power_product_terminal. ff_h_decision_power_product_terminal + S (bpv_result_decision) = S ((S (e)) * ff_v_decision_power_product)) /\ exists ff_q_decision_power_product_terminal. ff_u_decision_power_product = ff_q_decision_power_product_terminal * S ((S (e)) * ff_v_decision_power_product) + (bpv_result_decision))) /\ forall ff_i_decision_power_product. (exists ff_lt_decision_power_product_bound. ff_lt_decision_power_product_bound + S ff_i_decision_power_product = e) -> exists ff_p_decision_power_product ff_r_decision_power_product ff_s_decision_power_product. ((((exists ff_h_decision_power_product_factor. ff_h_decision_power_product_factor + S (ff_p_decision_power_product) = S ((S (ff_i_decision_power_product)) * ff_c_decision_power)) /\ exists ff_q_decision_power_product_factor. ff_b_decision_power = ff_q_decision_power_product_factor * S ((S (ff_i_decision_power_product)) * ff_c_decision_power) + (ff_p_decision_power_product))) /\ ((((exists ff_h_decision_power_product_partial. ff_h_decision_power_product_partial + S (ff_r_decision_power_product) = S ((S (ff_i_decision_power_product)) * ff_v_decision_power_product)) /\ exists ff_q_decision_power_product_partial. ff_u_decision_power_product = ff_q_decision_power_product_partial * S ((S (ff_i_decision_power_product)) * ff_v_decision_power_product) + (ff_r_decision_power_product))) /\ ((((exists ff_h_decision_power_product_successor. ff_h_decision_power_product_successor + S (ff_s_decision_power_product) = S ((S (S ff_i_decision_power_product)) * ff_v_decision_power_product)) /\ exists ff_q_decision_power_product_successor. ff_u_decision_power_product = ff_q_decision_power_product_successor * S ((S (S ff_i_decision_power_product)) * ff_v_decision_power_product) + (ff_s_decision_power_product))) /\ ff_s_decision_power_product = ff_r_decision_power_product * ff_p_decision_power_product)))))))) /\ (exists bpv_factor_decision_divides. a = bpv_result_decision * bpv_factor_decision_divides)))Proof neighborhood
Direct theorem prerequisites
Direct theorem dependents
Definition-aware tactic body
Only local propositions introduced by have or suffices are compacted. Every changed line has an exact-AST conservative-expansion receipt; the kernel still receives the immutable original tactic script.
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–3
02Establish hpowerL4–7
Establish this local claim before using it. It is not an additional assumption.
03Separate the logical casesL8–8
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L8
cases hpower
04Establish hdivL9–12
05Separate the logical casesL13–14
06Construct an explicit witnessL15–15
Supply the displayed value, then prove that it has the required property.
- L15
exists x
07Separate the logical casesL16–16
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L16
split
08Use earlier factsL17–18
09Separate the logical casesL19–19
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L19
right
10Fix variables and assumptionsL20–20
Work with arbitrary variables or the premises of the current implication.
- L20
intro hother
11Separate the logical casesL21–22
12Establish heqL23–32
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pow functional.
13Use earlier factsL33–33
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L33
exact hother_witness_right
Original defined command ledger · 33 lines
- 0001
intro p - 0002
intro e - 0003
intro a - 0004
have hpower : ∃ r. Pow(p,e,r)Exact native replay line
have hpower : exists r. (exists ff_b_decision_witness ff_c_decision_witness. ((forall ff_i_decision_witness_repeat. (exists ff_lt_decision_witness_repeat_bound. ff_lt_decision_witness_repeat_bound + S ff_i_decision_witness_repeat = e) -> (((exists ff_h_decision_witness_repeat_decoded. ff_h_decision_witness_repeat_decoded + S (p) = S ((S (ff_i_decision_witness_repeat)) * ff_c_decision_witness)) /\ exists ff_q_decision_witness_repeat_decoded. ff_b_decision_witness = ff_q_decision_witness_repeat_decoded * S ((S (ff_i_decision_witness_repeat)) * ff_c_decision_witness) + (p)))) /\ (exists ff_u_decision_witness_product ff_v_decision_witness_product. ((((exists ff_h_decision_witness_product_start. ff_h_decision_witness_product_start + S (1) = S ((S (0)) * ff_v_decision_witness_product)) /\ exists ff_q_decision_witness_product_start. ff_u_decision_witness_product = ff_q_decision_witness_product_start * S ((S (0)) * ff_v_decision_witness_product) + (1))) /\ ((((exists ff_h_decision_witness_product_terminal. ff_h_decision_witness_product_terminal + S (r) = S ((S (e)) * ff_v_decision_witness_product)) /\ exists ff_q_decision_witness_product_terminal. ff_u_decision_witness_product = ff_q_decision_witness_product_terminal * S ((S (e)) * ff_v_decision_witness_product) + (r))) /\ forall ff_i_decision_witness_product. (exists ff_lt_decision_witness_product_bound. ff_lt_decision_witness_product_bound + S ff_i_decision_witness_product = e) -> exists ff_p_decision_witness_product ff_r_decision_witness_product ff_s_decision_witness_product. ((((exists ff_h_decision_witness_product_factor. ff_h_decision_witness_product_factor + S (ff_p_decision_witness_product) = S ((S (ff_i_decision_witness_product)) * ff_c_decision_witness)) /\ exists ff_q_decision_witness_product_factor. ff_b_decision_witness = ff_q_decision_witness_product_factor * S ((S (ff_i_decision_witness_product)) * ff_c_decision_witness) + (ff_p_decision_witness_product))) /\ ((((exists ff_h_decision_witness_product_partial. ff_h_decision_witness_product_partial + S (ff_r_decision_witness_product) = S ((S (ff_i_decision_witness_product)) * ff_v_decision_witness_product)) /\ exists ff_q_decision_witness_product_partial. ff_u_decision_witness_product = ff_q_decision_witness_product_partial * S ((S (ff_i_decision_witness_product)) * ff_v_decision_witness_product) + (ff_r_decision_witness_product))) /\ ((((exists ff_h_decision_witness_product_successor. ff_h_decision_witness_product_successor + S (ff_s_decision_witness_product) = S ((S (S ff_i_decision_witness_product)) * ff_v_decision_witness_product)) /\ exists ff_q_decision_witness_product_successor. ff_u_decision_witness_product = ff_q_decision_witness_product_successor * S ((S (S ff_i_decision_witness_product)) * ff_v_decision_witness_product) + (ff_s_decision_witness_product))) /\ ff_s_decision_witness_product = ff_r_decision_witness_product * ff_p_decision_witness_product)))))))) - 0005
specialize pow_exists p - 0006
specialize pow_exists e - 0007
exact pow_exists - 0008
cases hpower - 0009
have hdiv : Dvd(x,a) ∨ ¬Dvd(x,a)Exact native replay line
have hdiv : (exists q. a = x * q) \/ ~(exists q. a = x * q) - 0010
specialize multiple_decidable x - 0011
specialize multiple_decidable a - 0012
exact multiple_decidable - 0013
cases hdiv - 0014
left - 0015
exists x - 0016
split - 0017
exact hpower_witness - 0018
exact hdiv_left - 0019
right - 0020
intro hother - 0021
cases hother - 0022
cases hother_witness - 0023
have heq : x1 = x - 0024
specialize pow_functional p - 0025
specialize pow_functional e - 0026
specialize pow_functional x1 - 0027
specialize pow_functional x - 0028
apply pow_functional - 0029
exact hother_witness_left - 0030
exact hpower_witness - 0031
apply hdiv_right - 0032
rewrite heq at hother_witness_right - 0033
exact hother_witness_right