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. ∀ q. ∀ h. ∀ k. ∀ i. ∀ j. p = 2 · h + 1 → q = 2 · k + 1 → Prime(p) → Prime(q) → ¬p = q → Lt(i,h) → Lt(j,k) → ∃ x. x = 0 ∧ (Lt(q · S i,p · S j) ∧ ¬Lt(p · S j,q · S i)) ∨ x = 1 ∧ (Lt(p · S j,q · S i) ∧ ¬Lt(q · S i,p · S j))Every purple notation token opens its conservative definition. This is a reading surface; the compiler expands the statement before the unchanged kernel checks it.
Definitions used by this theorem
In the theorem statement
8 occurrences
In local proof propositions
4 occurrences
Exact expanded native-PA statement
forall p q h k i j. p = 2 * h + 1 -> q = 2 * k + 1 -> ((~(p = 1) /\ forall frp_prime_left_row_indicator_prime_p frp_prime_right_row_indicator_prime_p. p = frp_prime_left_row_indicator_prime_p * frp_prime_right_row_indicator_prime_p -> frp_prime_left_row_indicator_prime_p = 1 \/ frp_prime_right_row_indicator_prime_p = 1)) -> ((~(q = 1) /\ forall frp_prime_left_row_indicator_prime_q frp_prime_right_row_indicator_prime_q. q = frp_prime_left_row_indicator_prime_q * frp_prime_right_row_indicator_prime_q -> frp_prime_left_row_indicator_prime_q = 1 \/ frp_prime_right_row_indicator_prime_q = 1)) -> ~(p = q) -> (exists eri_gap_row_indicator_i_bound. eri_gap_row_indicator_i_bound + S (i) = h) -> (exists eri_gap_row_indicator_j_bound. eri_gap_row_indicator_j_bound + S (j) = k) -> exists bit. (((bit = 0 /\ ((exists eri_gap_row_indicator_point_result_left. eri_gap_row_indicator_point_result_left + S (q * S i) = p * S j) /\ ~(exists eri_gap_row_indicator_point_result_right. eri_gap_row_indicator_point_result_right + S (p * S j) = q * S i))) \/ (bit = 1 /\ ((exists eri_gap_row_indicator_point_result_right. eri_gap_row_indicator_point_result_right + S (p * S j) = q * S i) /\ ~(exists eri_gap_row_indicator_point_result_left. eri_gap_row_indicator_point_result_left + S (q * S i) = p * S j)))))Proof neighborhood
Direct theorem prerequisites
Direct theorem dependents
Definition-aware tactic body
Only local propositions introduced by have or suffices are compacted. The untrusted compiler re-expands each one before the original tactic script is replayed; defined notation is never accepted by the kernel. Open the exact replay line beneath every changed command.
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 (1)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–13
03Establish horientationL14–23
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply distinct odd prime half cell oriented.
- L14
have horientation : Lt(q · S i,p · S j) ∧ ¬Lt(p · S j,q · S i) ∨ Lt(p · S j,q · S i) ∧ ¬Lt(q · S i,p · S j)Definitions: Lt(q · S i,p · S j)Lt(p · S j,q · S i)Original native command in the exact edition - L15
specialize distinct_odd_prime_half_cell_oriented p - L16
specialize distinct_odd_prime_half_cell_oriented q - L17
specialize distinct_odd_prime_half_cell_oriented h - L18
specialize distinct_odd_prime_half_cell_oriented k - L19
specialize distinct_odd_prime_half_cell_oriented i - L20
specialize distinct_odd_prime_half_cell_oriented j - L21
apply distinct_odd_prime_half_cell_oriented - L22
exact hpodd - L23
exact hqodd
04Use earlier factsL24–28
05Separate the logical casesL29–29
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L29
cases horientation
06Construct an explicit witnessL30–30
Supply the displayed value, then prove that it has the required property.
- L30
exists 0
07Separate the logical casesL31–32
08Calculate and transport equalitiesL33–33
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L33
refl
09Use earlier factsL34–34
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L34
exact horientation_left
10Construct an explicit witnessL35–35
Supply the displayed value, then prove that it has the required property.
- L35
exists 1
11Separate the logical casesL36–37
12Calculate and transport equalitiesL38–38
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L38
refl
13Use earlier factsL39–39
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L39
exact horientation_right
Original defined command ledger · 39 lines
- 0001
intro p - 0002
intro q - 0003
intro h - 0004
intro k - 0005
intro i - 0006
intro j - 0007
intro hpodd - 0008
intro hqodd - 0009
intro hp - 0010
intro hq - 0011
intro hpq - 0012
intro hi - 0013
intro hj - 0014
have horientation : Lt(q · S i,p · S j) ∧ ¬Lt(p · S j,q · S i) ∨ Lt(p · S j,q · S i) ∧ ¬Lt(q · S i,p · S j)Exact native replay line
have horientation : (((exists elo_gap_row_indicator_point_orientation_left. elo_gap_row_indicator_point_orientation_left + S (q * S i) = p * S j) /\ ~(exists elo_gap_row_indicator_point_orientation_right. elo_gap_row_indicator_point_orientation_right + S (p * S j) = q * S i)) \/ ((exists elo_gap_row_indicator_point_orientation_right. elo_gap_row_indicator_point_orientation_right + S (p * S j) = q * S i) /\ ~(exists elo_gap_row_indicator_point_orientation_left. elo_gap_row_indicator_point_orientation_left + S (q * S i) = p * S j))) - 0015
specialize distinct_odd_prime_half_cell_oriented p - 0016
specialize distinct_odd_prime_half_cell_oriented q - 0017
specialize distinct_odd_prime_half_cell_oriented h - 0018
specialize distinct_odd_prime_half_cell_oriented k - 0019
specialize distinct_odd_prime_half_cell_oriented i - 0020
specialize distinct_odd_prime_half_cell_oriented j - 0021
apply distinct_odd_prime_half_cell_oriented - 0022
exact hpodd - 0023
exact hqodd - 0024
exact hp - 0025
exact hq - 0026
exact hpq - 0027
exact hi - 0028
exact hj - 0029
cases horientation - 0030
exists 0 - 0031
left - 0032
split - 0033
refl - 0034
exact horientation_left - 0035
exists 1 - 0036
right - 0037
split - 0038
refl - 0039
exact horientation_right