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 d e. ((((~(exists pvs_factor_toggle_symmetric_firstfresh_input. (d) = (p) * pvs_factor_toggle_symmetric_firstfresh_input)) /\ ((e)=(p)*(d)))) \/ (((((d)=(p)*(e)) /\ (~(exists pvs_factor_toggle_symmetric_firstfresh_output. (e) = (p) * pvs_factor_toggle_symmetric_firstfresh_output)))) \/ (((exists pvs_factor_toggle_symmetric_firstsquare. (d) = ((p)*(p)) * pvs_factor_toggle_symmetric_firstsquare) /\ ((e)=(d)))))) -> ((((~(exists pvs_factor_toggle_symmetric_secondfresh_input. (e) = (p) * pvs_factor_toggle_symmetric_secondfresh_input)) /\ ((d)=(p)*(e)))) \/ (((((e)=(p)*(d)) /\ (~(exists pvs_factor_toggle_symmetric_secondfresh_output. (d) = (p) * pvs_factor_toggle_symmetric_secondfresh_output)))) \/ (((exists pvs_factor_toggle_symmetric_secondsquare. (e) = ((p)*(p)) * pvs_factor_toggle_symmetric_secondsquare) /\ ((d)=(e))))))Constructive proof overview
Generated structural guide
Adding and removing a fresh factor reverse each other, while the witnessed square-divisible branch is fixed.
The unchanged tactic script uses 0 declared prerequisites and contains 28 exact native proof lines.
Alpha v34 checked-use · first admitted v31 · 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–4
02Separate the logical casesL5–9
03Use earlier factsL10–11
04Separate the logical casesL12–15
05Use earlier factsL16–17
06Separate the logical casesL18–18
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L18
cases h_right_right
07Calculate and transport equalitiesL19–23
08Separate the logical casesL24–26
09Use earlier factsL27–27
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L27
exact h_right_right_left
10Calculate and transport equalitiesL28–28
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L28
refl
Original exact command ledger · 28 lines
- 0001
intro p - 0002
intro d - 0003
intro e - 0004
intro h - 0005
cases h - 0006
cases h_left - 0007
right - 0008
left - 0009
split - 0010
exact h_left_right - 0011
exact h_left_left - 0012
cases h_right - 0013
cases h_right_left - 0014
left - 0015
split - 0016
exact h_right_left_right - 0017
exact h_right_left_left - 0018
cases h_right_right - 0019
rewrite h_right_right_right - 0020
rewrite h_right_right_right - 0021
rewrite h_right_right_right - 0022
rewrite h_right_right_right - 0023
rewrite h_right_right_right - 0024
right - 0025
right - 0026
split - 0027
exact h_right_right_left - 0028
refl