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. ∀ h. ∀ a. p = 2 · h + 1 → Odd(a) → Prime(p) → ¬Dvd(p,a) → ∃ x. ∃ y. ∃ z. ∃ n. ∃ m. ∃ k. ∃ i. ∃ j. (∀ u. ∀ v. Lt(u,h) → BetaAt(x,y,u,v) → v = a · (1 + u)) ∧ (DivisionPrefix(p,x,y,z,n,m,k,h) ∧ (Sum(z,n,h,j) ∧ ((QRes(p,a) → Even(i)) ∧ (Even(i) → QRes(p,a)) ∧ ((¬QRes(p,a) → Odd(i)) ∧ (Odd(i) → ¬QRes(p,a))) ∧ ModEq(2,i,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
PD0002 Lt PD0003 Dvd PD0004 Prime PD0008 ModEq PD0009 Even PD0010 Odd PD0013 BetaAt PD0015 Sum PD0021 QRes PD0040 DivisionPrefix16 occurrences
In local proof propositions
PD0001 Le PD0002 Lt PD0008 ModEq PD0009 Even PD0010 Odd PD0013 BetaAt PD0015 Sum PD0017 BitCount PD0018 Range PD0021 QRes PD0040 DivisionPrefix24 occurrences
Exact expanded native-PA statement
forall p h a. p = 2 * h + 1 -> (exists gs_odd_ged_orientation_odd. a = 2 * gs_odd_ged_orientation_odd + 1) -> ((~(p = 1) /\ forall gsp_prime_left_ged_orientation_prime gsp_prime_right_ged_orientation_prime. p = gsp_prime_left_ged_orientation_prime * gsp_prime_right_ged_orientation_prime -> gsp_prime_left_ged_orientation_prime = 1 \/ gsp_prime_right_ged_orientation_prime = 1)) -> (~(exists gsp_divisor_factor_ged_orientation_nondivisor. a = p * gsp_divisor_factor_ged_orientation_nondivisor)) -> (exists tb tc qb qc rb rc e Q. ((forall esd_index_ged_orientation_scaled esd_value_ged_orientation_scaled. (exists esd_gap_ged_orientation_scaled. esd_gap_ged_orientation_scaled + S esd_index_ged_orientation_scaled = h) -> (((exists ff_h_esd_ged_orientation_scaled_decoded. ff_h_esd_ged_orientation_scaled_decoded + S (esd_value_ged_orientation_scaled) = S ((S (esd_index_ged_orientation_scaled)) * tc)) /\ exists ff_q_esd_ged_orientation_scaled_decoded. tb = ff_q_esd_ged_orientation_scaled_decoded * S ((S (esd_index_ged_orientation_scaled)) * tc) + (esd_value_ged_orientation_scaled))) -> esd_value_ged_orientation_scaled = a * (1 + esd_index_ged_orientation_scaled)) /\ ((forall fdp_index_ged_orientation_division. (exists gsp_lt_gap_ged_orientation_division_index_bound. gsp_lt_gap_ged_orientation_division_index_bound + S fdp_index_ged_orientation_division = h) -> exists fdp_value_ged_orientation_division fdp_quotient_ged_orientation_division fdp_remainder_ged_orientation_division. (((exists ff_h_fdp_ged_orientation_division_source. ff_h_fdp_ged_orientation_division_source + S (fdp_value_ged_orientation_division) = S ((S (fdp_index_ged_orientation_division)) * tc)) /\ exists ff_q_fdp_ged_orientation_division_source. tb = ff_q_fdp_ged_orientation_division_source * S ((S (fdp_index_ged_orientation_division)) * tc) + (fdp_value_ged_orientation_division))) /\ ((((exists ff_h_fdp_ged_orientation_division_quotient_entry. ff_h_fdp_ged_orientation_division_quotient_entry + S (fdp_quotient_ged_orientation_division) = S ((S (fdp_index_ged_orientation_division)) * qc)) /\ exists ff_q_fdp_ged_orientation_division_quotient_entry. qb = ff_q_fdp_ged_orientation_division_quotient_entry * S ((S (fdp_index_ged_orientation_division)) * qc) + (fdp_quotient_ged_orientation_division))) /\ ((((exists ff_h_fdp_ged_orientation_division_remainder_entry. ff_h_fdp_ged_orientation_division_remainder_entry + S (fdp_remainder_ged_orientation_division) = S ((S (fdp_index_ged_orientation_division)) * rc)) /\ exists ff_q_fdp_ged_orientation_division_remainder_entry. rb = ff_q_fdp_ged_orientation_division_remainder_entry * S ((S (fdp_index_ged_orientation_division)) * rc) + (fdp_remainder_ged_orientation_division))) /\ (fdp_value_ged_orientation_division = p * fdp_quotient_ged_orientation_division + fdp_remainder_ged_orientation_division /\ (exists gsp_lt_gap_ged_orientation_division_remainder_bound. gsp_lt_gap_ged_orientation_division_remainder_bound + S fdp_remainder_ged_orientation_division = p))))) /\ ((exists ff_u_ged_orientation_sum ff_v_ged_orientation_sum. ((((exists ff_h_ged_orientation_sum_start. ff_h_ged_orientation_sum_start + S (0) = S ((S (0)) * ff_v_ged_orientation_sum)) /\ exists ff_q_ged_orientation_sum_start. ff_u_ged_orientation_sum = ff_q_ged_orientation_sum_start * S ((S (0)) * ff_v_ged_orientation_sum) + (0))) /\ ((((exists ff_h_ged_orientation_sum_terminal. ff_h_ged_orientation_sum_terminal + S (Q) = S ((S (h)) * ff_v_ged_orientation_sum)) /\ exists ff_q_ged_orientation_sum_terminal. ff_u_ged_orientation_sum = ff_q_ged_orientation_sum_terminal * S ((S (h)) * ff_v_ged_orientation_sum) + (Q))) /\ forall ff_i_ged_orientation_sum. (exists ff_lt_ged_orientation_sum_bound. ff_lt_ged_orientation_sum_bound + S ff_i_ged_orientation_sum = h) -> exists ff_a_ged_orientation_sum ff_r_ged_orientation_sum ff_s_ged_orientation_sum. ((((exists ff_h_ged_orientation_sum_summand. ff_h_ged_orientation_sum_summand + S (ff_a_ged_orientation_sum) = S ((S (ff_i_ged_orientation_sum)) * qc)) /\ exists ff_q_ged_orientation_sum_summand. qb = ff_q_ged_orientation_sum_summand * S ((S (ff_i_ged_orientation_sum)) * qc) + (ff_a_ged_orientation_sum))) /\ ((((exists ff_h_ged_orientation_sum_partial. ff_h_ged_orientation_sum_partial + S (ff_r_ged_orientation_sum) = S ((S (ff_i_ged_orientation_sum)) * ff_v_ged_orientation_sum)) /\ exists ff_q_ged_orientation_sum_partial. ff_u_ged_orientation_sum = ff_q_ged_orientation_sum_partial * S ((S (ff_i_ged_orientation_sum)) * ff_v_ged_orientation_sum) + (ff_r_ged_orientation_sum))) /\ ((((exists ff_h_ged_orientation_sum_successor. ff_h_ged_orientation_sum_successor + S (ff_s_ged_orientation_sum) = S ((S (S ff_i_ged_orientation_sum)) * ff_v_ged_orientation_sum)) /\ exists ff_q_ged_orientation_sum_successor. ff_u_ged_orientation_sum = ff_q_ged_orientation_sum_successor * S ((S (S ff_i_ged_orientation_sum)) * ff_v_ged_orientation_sum) + (ff_s_ged_orientation_sum))) /\ ff_s_ged_orientation_sum = ff_r_ged_orientation_sum + ff_a_ged_orientation_sum)))))) /\ (((((((exists qr_x_ged_orientation_classification_qres. exists qr_u_ged_orientation_classification_qres qr_v_ged_orientation_classification_qres. qr_x_ged_orientation_classification_qres * qr_x_ged_orientation_classification_qres + p * qr_u_ged_orientation_classification_qres = a + p * qr_v_ged_orientation_classification_qres) -> (exists gs_even_ged_orientation_classification_even. e = 2 * gs_even_ged_orientation_classification_even)) /\ ((exists gs_even_ged_orientation_classification_even. e = 2 * gs_even_ged_orientation_classification_even) -> (exists qr_x_ged_orientation_classification_qres. exists qr_u_ged_orientation_classification_qres qr_v_ged_orientation_classification_qres. qr_x_ged_orientation_classification_qres * qr_x_ged_orientation_classification_qres + p * qr_u_ged_orientation_classification_qres = a + p * qr_v_ged_orientation_classification_qres)))) /\ (((~(exists qr_x_ged_orientation_classification_qres. exists qr_u_ged_orientation_classification_qres qr_v_ged_orientation_classification_qres. qr_x_ged_orientation_classification_qres * qr_x_ged_orientation_classification_qres + p * qr_u_ged_orientation_classification_qres = a + p * qr_v_ged_orientation_classification_qres) -> (exists gs_odd_ged_orientation_classification_odd. e = 2 * gs_odd_ged_orientation_classification_odd + 1)) /\ ((exists gs_odd_ged_orientation_classification_odd. e = 2 * gs_odd_ged_orientation_classification_odd + 1) -> ~(exists qr_x_ged_orientation_classification_qres. exists qr_u_ged_orientation_classification_qres qr_v_ged_orientation_classification_qres. qr_x_ged_orientation_classification_qres * qr_x_ged_orientation_classification_qres + p * qr_u_ged_orientation_classification_qres = a + p * qr_v_ged_orientation_classification_qres)))))) /\ (exists fspm_u_ged_orientation_count_mod_sum fspm_v_ged_orientation_count_mod_sum. (e) + 2 * fspm_u_ged_orientation_count_mod_sum = (Q) + 2 * fspm_v_ged_orientation_count_mod_sum))))))Proof neighborhood
Direct theorem prerequisites
PA0030 beta_range_exists PA00BV arbitrary_gauss_lemma_complete PA00C1 prime_scaled_half_quotient_sum_exists PA00D6 gauss_eisenstein_sign_count_mod_quotient_sum PA003L mod_eq_symmDirect 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 (5)
01Fix variables and assumptionsL1–7
02Establish hhalf_existsL8–11
Establish this local claim before using it. It is not an additional assumption.
- L8
have hhalf_exists : ∃ b. ∃ c. Range(b,c,1,h)Definitions: Range(b,c,1,h)Original native command in the exact edition - L9
specialize beta_range_exists 1 - L10
specialize beta_range_exists h - L11
exact beta_range_exists
03Separate the logical casesL12–13
04Establish hgaussL14–23
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply arbitrary gauss lemma complete.
- L14
have hgauss : ∃ e. (∃ y. ∃ z. ∃ n. ∃ m. (∀ k. Lt(k,h) → ∃ i. ∃ j. ∃ u. BetaAt(x,x1,k,i) ∧ (BetaAt(y,z,k,j) ∧ (BetaAt(n,m,k,u) ∧ (Lt(0,j) ∧ (Le(j,h) ∧ ((u = 0 ∨ u = 1) ∧ (u = 0 ∧ ModEq(p,a · i,j) ∨ u = 1 ∧ ModEq(p,a · i,2 · h · j)))))))) ∧ BitCount(n,m,h,e)) ∧ ((QRes(p,a) → Even(e)) ∧ (Even(e) → QRes(p,a)) ∧ ((¬QRes(p,a) → Odd(e)) ∧ (Odd(e) → ¬QRes(p,a))))Definitions: Lt(k,h)BetaAt(x,x1,k,i)BetaAt(y,z,k,j)BetaAt(n,m,k,u)Lt(0,j)Le(j,h)ModEq(p,a · i,j)ModEq(p,a · i,2 · h · j)BitCount(n,m,h,e)QRes(p,a)Even(e)Odd(e)Original native command in the exact edition - L15
specialize arbitrary_gauss_lemma_complete p - L16
specialize arbitrary_gauss_lemma_complete h - L17
specialize arbitrary_gauss_lemma_complete a - L18
specialize arbitrary_gauss_lemma_complete x - L19
specialize arbitrary_gauss_lemma_complete x1 - L20
apply arbitrary_gauss_lemma_complete - L21
exact hpodd - L22
exact hprime - L23
exact hnotdiv
05Use earlier factsL24–24
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L24
exact hhalf_exists_witness_witness
06Separate the logical casesL25–31
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
07Establish hquotientL32–41
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime scaled half quotient sum exists.
- L32
have hquotient : ∃ tb. ∃ tc. ∃ qb. ∃ qc. ∃ rb. ∃ rc. ∃ Q. (∀ x. ∀ y. Lt(x,h) → BetaAt(tb,tc,x,y) → y = a · (1 + x)) ∧ (DivisionPrefix(p,tb,tc,qb,qc,rb,rc,h) ∧ Sum(qb,qc,h,Q))Definitions: Lt(x,h)BetaAt(tb,tc,x,y)DivisionPrefix(p,tb,tc,qb,qc,rb,rc,h)Sum(qb,qc,h,Q)Original native command in the exact edition - L33
specialize prime_scaled_half_quotient_sum_exists p - L34
specialize prime_scaled_half_quotient_sum_exists h - L35
specialize prime_scaled_half_quotient_sum_exists a - L36
specialize prime_scaled_half_quotient_sum_exists x - L37
specialize prime_scaled_half_quotient_sum_exists x1 - L38
apply prime_scaled_half_quotient_sum_exists - L39
exact hpodd - L40
exact hprime - L41
exact hhalf_exists_witness_witness
08Separate the logical casesL42–50
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L42
cases hquotient - L43
cases hquotient_witness - L44
cases hquotient_witness_witness - L45
cases hquotient_witness_witness_witness - L46
cases hquotient_witness_witness_witness_witness - L47
cases hquotient_witness_witness_witness_witness_witness - L48
cases hquotient_witness_witness_witness_witness_witness_witness - L49
cases hquotient_witness_witness_witness_witness_witness_witness_witness - L50
cases hquotient_witness_witness_witness_witness_witness_witness_witness_right
09Establish hquotient_mod_countL51–60
Establish this local claim before using it. It is not an additional assumption.
- L51
have hquotient_mod_count : ModEq(2,x13,x2)Definitions: ModEq(2,x13,x2)Original native command in the exact edition - L52
specialize gauss_eisenstein_sign_count_mod_quotient_sum p - L53
specialize gauss_eisenstein_sign_count_mod_quotient_sum h - L54
specialize gauss_eisenstein_sign_count_mod_quotient_sum a - L55
specialize gauss_eisenstein_sign_count_mod_quotient_sum x - L56
specialize gauss_eisenstein_sign_count_mod_quotient_sum x1 - L57
specialize gauss_eisenstein_sign_count_mod_quotient_sum x7 - L58
specialize gauss_eisenstein_sign_count_mod_quotient_sum x8 - L59
specialize gauss_eisenstein_sign_count_mod_quotient_sum x9 - L60
specialize gauss_eisenstein_sign_count_mod_quotient_sum x10
10Use earlier factsL61–70
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L61
specialize gauss_eisenstein_sign_count_mod_quotient_sum x11 - L62
specialize gauss_eisenstein_sign_count_mod_quotient_sum x12 - L63
specialize gauss_eisenstein_sign_count_mod_quotient_sum x3 - L64
specialize gauss_eisenstein_sign_count_mod_quotient_sum x4 - L65
specialize gauss_eisenstein_sign_count_mod_quotient_sum x5 - L66
specialize gauss_eisenstein_sign_count_mod_quotient_sum x6 - L67
specialize gauss_eisenstein_sign_count_mod_quotient_sum x13 - L68
specialize gauss_eisenstein_sign_count_mod_quotient_sum x2 - L69
apply gauss_eisenstein_sign_count_mod_quotient_sum - L70
exact hpodd
11Use earlier factsL71–79
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L71
exact haodd - L72
exact hprime - L73
exact hnotdiv - L74
exact hhalf_exists_witness_witness - L75
exact hquotient_witness_witness_witness_witness_witness_witness_witness_left - L76
exact hquotient_witness_witness_witness_witness_witness_witness_witness_right_left - L77
exact hgauss_witness_left_witness_witness_witness_witness_left - L78
exact hgauss_witness_left_witness_witness_witness_witness_right - L79
exact hquotient_witness_witness_witness_witness_witness_witness_witness_right_right
12Establish hcount_mod_quotientL80–85
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mod eq symm.
- L80
have hcount_mod_quotient : ModEq(2,x2,x13)Definitions: ModEq(2,x2,x13)Original native command in the exact edition - L81
specialize mod_eq_symm 2 - L82
specialize mod_eq_symm x13 - L83
specialize mod_eq_symm x2 - L84
apply mod_eq_symm - L85
exact hquotient_mod_count
13Construct an explicit witnessL86–93
14Separate the logical casesL94–94
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L94
split
15Use earlier factsL95–95
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L95
exact hquotient_witness_witness_witness_witness_witness_witness_witness_left
16Separate the logical casesL96–96
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L96
split
17Use earlier factsL97–97
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L97
exact hquotient_witness_witness_witness_witness_witness_witness_witness_right_left
18Separate the logical casesL98–98
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L98
split
19Use earlier factsL99–99
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L99
exact hquotient_witness_witness_witness_witness_witness_witness_witness_right_right
20Separate the logical casesL100–100
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L100
split
Original defined command ledger · 102 lines
- 0001
intro p - 0002
intro h - 0003
intro a - 0004
intro hpodd - 0005
intro haodd - 0006
intro hprime - 0007
intro hnotdiv - 0008
have hhalf_exists : ∃ b. ∃ c. Range(b,c,1,h)Exact native replay line
have hhalf_exists : exists b c. (forall gsp_range_index_ged_orientation_half_exists. (exists gsp_lt_gap_ged_orientation_half_exists_range_bound. gsp_lt_gap_ged_orientation_half_exists_range_bound + S gsp_range_index_ged_orientation_half_exists = h) -> (((exists gsp_beta_height_ged_orientation_half_exists_range_entry. gsp_beta_height_ged_orientation_half_exists_range_entry + S (1 + gsp_range_index_ged_orientation_half_exists) = S ((S (gsp_range_index_ged_orientation_half_exists)) * c)) /\ exists gsp_beta_quotient_ged_orientation_half_exists_range_entry. b = gsp_beta_quotient_ged_orientation_half_exists_range_entry * S ((S (gsp_range_index_ged_orientation_half_exists)) * c) + (1 + gsp_range_index_ged_orientation_half_exists)))) - 0009
specialize beta_range_exists 1 - 0010
specialize beta_range_exists h - 0011
exact beta_range_exists - 0012
cases hhalf_exists - 0013
cases hhalf_exists_witness - 0014
have hgauss : ∃ e. (∃ y. ∃ z. ∃ n. ∃ m. (∀ k. Lt(k,h) → ∃ i. ∃ j. ∃ u. BetaAt(x,x1,k,i) ∧ (BetaAt(y,z,k,j) ∧ (BetaAt(n,m,k,u) ∧ (Lt(0,j) ∧ (Le(j,h) ∧ ((u = 0 ∨ u = 1) ∧ (u = 0 ∧ ModEq(p,a · i,j) ∨ u = 1 ∧ ModEq(p,a · i,2 · h · j)))))))) ∧ BitCount(n,m,h,e)) ∧ ((QRes(p,a) → Even(e)) ∧ (Even(e) → QRes(p,a)) ∧ ((¬QRes(p,a) → Odd(e)) ∧ (Odd(e) → ¬QRes(p,a))))Exact native replay line
have hgauss : exists e. ((exists mb mc sb sc. ((forall gsp_index_ged_orientation_hidden_signed. (exists gsp_lt_gap_ged_orientation_hidden_signed_index_bound. gsp_lt_gap_ged_orientation_hidden_signed_index_bound + S gsp_index_ged_orientation_hidden_signed = h) -> (exists gsp_value_ged_orientation_hidden_signed_entry gsp_magnitude_ged_orientation_hidden_signed_entry gsp_sign_ged_orientation_hidden_signed_entry. (((exists ff_h_gsp_ged_orientation_hidden_signed_entry_source. ff_h_gsp_ged_orientation_hidden_signed_entry_source + S (gsp_value_ged_orientation_hidden_signed_entry) = S ((S (gsp_index_ged_orientation_hidden_signed)) * x1)) /\ exists ff_q_gsp_ged_orientation_hidden_signed_entry_source. x = ff_q_gsp_ged_orientation_hidden_signed_entry_source * S ((S (gsp_index_ged_orientation_hidden_signed)) * x1) + (gsp_value_ged_orientation_hidden_signed_entry))) /\ ((((exists ff_h_gsp_ged_orientation_hidden_signed_entry_magnitude. ff_h_gsp_ged_orientation_hidden_signed_entry_magnitude + S (gsp_magnitude_ged_orientation_hidden_signed_entry) = S ((S (gsp_index_ged_orientation_hidden_signed)) * mc)) /\ exists ff_q_gsp_ged_orientation_hidden_signed_entry_magnitude. mb = ff_q_gsp_ged_orientation_hidden_signed_entry_magnitude * S ((S (gsp_index_ged_orientation_hidden_signed)) * mc) + (gsp_magnitude_ged_orientation_hidden_signed_entry))) /\ ((((exists ff_h_gsp_ged_orientation_hidden_signed_entry_sign. ff_h_gsp_ged_orientation_hidden_signed_entry_sign + S (gsp_sign_ged_orientation_hidden_signed_entry) = S ((S (gsp_index_ged_orientation_hidden_signed)) * sc)) /\ exists ff_q_gsp_ged_orientation_hidden_signed_entry_sign. sb = ff_q_gsp_ged_orientation_hidden_signed_entry_sign * S ((S (gsp_index_ged_orientation_hidden_signed)) * sc) + (gsp_sign_ged_orientation_hidden_signed_entry))) /\ ((exists gsp_lt_gap_ged_orientation_hidden_signed_entry_positive. gsp_lt_gap_ged_orientation_hidden_signed_entry_positive + S 0 = gsp_magnitude_ged_orientation_hidden_signed_entry) /\ ((exists gsp_le_gap_ged_orientation_hidden_signed_entry_bounded. gsp_le_gap_ged_orientation_hidden_signed_entry_bounded + gsp_magnitude_ged_orientation_hidden_signed_entry = h) /\ ((gsp_sign_ged_orientation_hidden_signed_entry = 0 \/ gsp_sign_ged_orientation_hidden_signed_entry = 1) /\ (((gsp_sign_ged_orientation_hidden_signed_entry = 0 /\ (exists gsp_mod_left_ged_orientation_hidden_signed_entry_lower gsp_mod_right_ged_orientation_hidden_signed_entry_lower. (a * gsp_value_ged_orientation_hidden_signed_entry) + p * gsp_mod_left_ged_orientation_hidden_signed_entry_lower = (gsp_magnitude_ged_orientation_hidden_signed_entry) + p * gsp_mod_right_ged_orientation_hidden_signed_entry_lower)) \/ (gsp_sign_ged_orientation_hidden_signed_entry = 1 /\ (exists gsp_mod_left_ged_orientation_hidden_signed_entry_reflected gsp_mod_right_ged_orientation_hidden_signed_entry_reflected. (a * gsp_value_ged_orientation_hidden_signed_entry) + p * gsp_mod_left_ged_orientation_hidden_signed_entry_reflected = ((2 * h) * gsp_magnitude_ged_orientation_hidden_signed_entry) + p * gsp_mod_right_ged_orientation_hidden_signed_entry_reflected))))))))))) /\ (((exists ff_u_ged_orientation_hidden_count_sum ff_v_ged_orientation_hidden_count_sum. ((((exists ff_h_ged_orientation_hidden_count_sum_start. ff_h_ged_orientation_hidden_count_sum_start + S (0) = S ((S (0)) * ff_v_ged_orientation_hidden_count_sum)) /\ exists ff_q_ged_orientation_hidden_count_sum_start. ff_u_ged_orientation_hidden_count_sum = ff_q_ged_orientation_hidden_count_sum_start * S ((S (0)) * ff_v_ged_orientation_hidden_count_sum) + (0))) /\ ((((exists ff_h_ged_orientation_hidden_count_sum_terminal. ff_h_ged_orientation_hidden_count_sum_terminal + S (e) = S ((S (h)) * ff_v_ged_orientation_hidden_count_sum)) /\ exists ff_q_ged_orientation_hidden_count_sum_terminal. ff_u_ged_orientation_hidden_count_sum = ff_q_ged_orientation_hidden_count_sum_terminal * S ((S (h)) * ff_v_ged_orientation_hidden_count_sum) + (e))) /\ forall ff_i_ged_orientation_hidden_count_sum. (exists ff_lt_ged_orientation_hidden_count_sum_bound. ff_lt_ged_orientation_hidden_count_sum_bound + S ff_i_ged_orientation_hidden_count_sum = h) -> exists ff_a_ged_orientation_hidden_count_sum ff_r_ged_orientation_hidden_count_sum ff_s_ged_orientation_hidden_count_sum. ((((exists ff_h_ged_orientation_hidden_count_sum_summand. ff_h_ged_orientation_hidden_count_sum_summand + S (ff_a_ged_orientation_hidden_count_sum) = S ((S (ff_i_ged_orientation_hidden_count_sum)) * sc)) /\ exists ff_q_ged_orientation_hidden_count_sum_summand. sb = ff_q_ged_orientation_hidden_count_sum_summand * S ((S (ff_i_ged_orientation_hidden_count_sum)) * sc) + (ff_a_ged_orientation_hidden_count_sum))) /\ ((((exists ff_h_ged_orientation_hidden_count_sum_partial. ff_h_ged_orientation_hidden_count_sum_partial + S (ff_r_ged_orientation_hidden_count_sum) = S ((S (ff_i_ged_orientation_hidden_count_sum)) * ff_v_ged_orientation_hidden_count_sum)) /\ exists ff_q_ged_orientation_hidden_count_sum_partial. ff_u_ged_orientation_hidden_count_sum = ff_q_ged_orientation_hidden_count_sum_partial * S ((S (ff_i_ged_orientation_hidden_count_sum)) * ff_v_ged_orientation_hidden_count_sum) + (ff_r_ged_orientation_hidden_count_sum))) /\ ((((exists ff_h_ged_orientation_hidden_count_sum_successor. ff_h_ged_orientation_hidden_count_sum_successor + S (ff_s_ged_orientation_hidden_count_sum) = S ((S (S ff_i_ged_orientation_hidden_count_sum)) * ff_v_ged_orientation_hidden_count_sum)) /\ exists ff_q_ged_orientation_hidden_count_sum_successor. ff_u_ged_orientation_hidden_count_sum = ff_q_ged_orientation_hidden_count_sum_successor * S ((S (S ff_i_ged_orientation_hidden_count_sum)) * ff_v_ged_orientation_hidden_count_sum) + (ff_s_ged_orientation_hidden_count_sum))) /\ ff_s_ged_orientation_hidden_count_sum = ff_r_ged_orientation_hidden_count_sum + ff_a_ged_orientation_hidden_count_sum)))))) /\ (forall ff_i_ged_orientation_hidden_count_bits. (exists ff_lt_ged_orientation_hidden_count_bits_bound. ff_lt_ged_orientation_hidden_count_bits_bound + S ff_i_ged_orientation_hidden_count_bits = h) -> exists ff_bit_ged_orientation_hidden_count_bits. ((((exists ff_h_ged_orientation_hidden_count_bits_decoded. ff_h_ged_orientation_hidden_count_bits_decoded + S (ff_bit_ged_orientation_hidden_count_bits) = S ((S (ff_i_ged_orientation_hidden_count_bits)) * sc)) /\ exists ff_q_ged_orientation_hidden_count_bits_decoded. sb = ff_q_ged_orientation_hidden_count_bits_decoded * S ((S (ff_i_ged_orientation_hidden_count_bits)) * sc) + (ff_bit_ged_orientation_hidden_count_bits))) /\ (ff_bit_ged_orientation_hidden_count_bits = 0 \/ ff_bit_ged_orientation_hidden_count_bits = 1))))))) /\ ((((((exists qr_x_ged_orientation_hidden_classification_qres. exists qr_u_ged_orientation_hidden_classification_qres qr_v_ged_orientation_hidden_classification_qres. qr_x_ged_orientation_hidden_classification_qres * qr_x_ged_orientation_hidden_classification_qres + p * qr_u_ged_orientation_hidden_classification_qres = a + p * qr_v_ged_orientation_hidden_classification_qres) -> (exists gs_even_ged_orientation_hidden_classification_even. e = 2 * gs_even_ged_orientation_hidden_classification_even)) /\ ((exists gs_even_ged_orientation_hidden_classification_even. e = 2 * gs_even_ged_orientation_hidden_classification_even) -> (exists qr_x_ged_orientation_hidden_classification_qres. exists qr_u_ged_orientation_hidden_classification_qres qr_v_ged_orientation_hidden_classification_qres. qr_x_ged_orientation_hidden_classification_qres * qr_x_ged_orientation_hidden_classification_qres + p * qr_u_ged_orientation_hidden_classification_qres = a + p * qr_v_ged_orientation_hidden_classification_qres)))) /\ (((~(exists qr_x_ged_orientation_hidden_classification_qres. exists qr_u_ged_orientation_hidden_classification_qres qr_v_ged_orientation_hidden_classification_qres. qr_x_ged_orientation_hidden_classification_qres * qr_x_ged_orientation_hidden_classification_qres + p * qr_u_ged_orientation_hidden_classification_qres = a + p * qr_v_ged_orientation_hidden_classification_qres) -> (exists gs_odd_ged_orientation_hidden_classification_odd. e = 2 * gs_odd_ged_orientation_hidden_classification_odd + 1)) /\ ((exists gs_odd_ged_orientation_hidden_classification_odd. e = 2 * gs_odd_ged_orientation_hidden_classification_odd + 1) -> ~(exists qr_x_ged_orientation_hidden_classification_qres. exists qr_u_ged_orientation_hidden_classification_qres qr_v_ged_orientation_hidden_classification_qres. qr_x_ged_orientation_hidden_classification_qres * qr_x_ged_orientation_hidden_classification_qres + p * qr_u_ged_orientation_hidden_classification_qres = a + p * qr_v_ged_orientation_hidden_classification_qres))))))) - 0015
specialize arbitrary_gauss_lemma_complete p - 0016
specialize arbitrary_gauss_lemma_complete h - 0017
specialize arbitrary_gauss_lemma_complete a - 0018
specialize arbitrary_gauss_lemma_complete x - 0019
specialize arbitrary_gauss_lemma_complete x1 - 0020
apply arbitrary_gauss_lemma_complete - 0021
exact hpodd - 0022
exact hprime - 0023
exact hnotdiv - 0024
exact hhalf_exists_witness_witness - 0025
cases hgauss - 0026
cases hgauss_witness - 0027
cases hgauss_witness_left - 0028
cases hgauss_witness_left_witness - 0029
cases hgauss_witness_left_witness_witness - 0030
cases hgauss_witness_left_witness_witness_witness - 0031
cases hgauss_witness_left_witness_witness_witness_witness - 0032
have hquotient : ∃ tb. ∃ tc. ∃ qb. ∃ qc. ∃ rb. ∃ rc. ∃ Q. (∀ x. ∀ y. Lt(x,h) → BetaAt(tb,tc,x,y) → y = a · (1 + x)) ∧ (DivisionPrefix(p,tb,tc,qb,qc,rb,rc,h) ∧ Sum(qb,qc,h,Q))Exact native replay line
have hquotient : exists tb tc qb qc rb rc Q. ((forall esd_index_ged_orientation_hidden_scaled esd_value_ged_orientation_hidden_scaled. (exists esd_gap_ged_orientation_hidden_scaled. esd_gap_ged_orientation_hidden_scaled + S esd_index_ged_orientation_hidden_scaled = h) -> (((exists ff_h_esd_ged_orientation_hidden_scaled_decoded. ff_h_esd_ged_orientation_hidden_scaled_decoded + S (esd_value_ged_orientation_hidden_scaled) = S ((S (esd_index_ged_orientation_hidden_scaled)) * tc)) /\ exists ff_q_esd_ged_orientation_hidden_scaled_decoded. tb = ff_q_esd_ged_orientation_hidden_scaled_decoded * S ((S (esd_index_ged_orientation_hidden_scaled)) * tc) + (esd_value_ged_orientation_hidden_scaled))) -> esd_value_ged_orientation_hidden_scaled = a * (1 + esd_index_ged_orientation_hidden_scaled)) /\ ((forall fdp_index_ged_orientation_hidden_division. (exists gsp_lt_gap_ged_orientation_hidden_division_index_bound. gsp_lt_gap_ged_orientation_hidden_division_index_bound + S fdp_index_ged_orientation_hidden_division = h) -> exists fdp_value_ged_orientation_hidden_division fdp_quotient_ged_orientation_hidden_division fdp_remainder_ged_orientation_hidden_division. (((exists ff_h_fdp_ged_orientation_hidden_division_source. ff_h_fdp_ged_orientation_hidden_division_source + S (fdp_value_ged_orientation_hidden_division) = S ((S (fdp_index_ged_orientation_hidden_division)) * tc)) /\ exists ff_q_fdp_ged_orientation_hidden_division_source. tb = ff_q_fdp_ged_orientation_hidden_division_source * S ((S (fdp_index_ged_orientation_hidden_division)) * tc) + (fdp_value_ged_orientation_hidden_division))) /\ ((((exists ff_h_fdp_ged_orientation_hidden_division_quotient_entry. ff_h_fdp_ged_orientation_hidden_division_quotient_entry + S (fdp_quotient_ged_orientation_hidden_division) = S ((S (fdp_index_ged_orientation_hidden_division)) * qc)) /\ exists ff_q_fdp_ged_orientation_hidden_division_quotient_entry. qb = ff_q_fdp_ged_orientation_hidden_division_quotient_entry * S ((S (fdp_index_ged_orientation_hidden_division)) * qc) + (fdp_quotient_ged_orientation_hidden_division))) /\ ((((exists ff_h_fdp_ged_orientation_hidden_division_remainder_entry. ff_h_fdp_ged_orientation_hidden_division_remainder_entry + S (fdp_remainder_ged_orientation_hidden_division) = S ((S (fdp_index_ged_orientation_hidden_division)) * rc)) /\ exists ff_q_fdp_ged_orientation_hidden_division_remainder_entry. rb = ff_q_fdp_ged_orientation_hidden_division_remainder_entry * S ((S (fdp_index_ged_orientation_hidden_division)) * rc) + (fdp_remainder_ged_orientation_hidden_division))) /\ (fdp_value_ged_orientation_hidden_division = p * fdp_quotient_ged_orientation_hidden_division + fdp_remainder_ged_orientation_hidden_division /\ (exists gsp_lt_gap_ged_orientation_hidden_division_remainder_bound. gsp_lt_gap_ged_orientation_hidden_division_remainder_bound + S fdp_remainder_ged_orientation_hidden_division = p))))) /\ (exists ff_u_ged_orientation_hidden_sum ff_v_ged_orientation_hidden_sum. ((((exists ff_h_ged_orientation_hidden_sum_start. ff_h_ged_orientation_hidden_sum_start + S (0) = S ((S (0)) * ff_v_ged_orientation_hidden_sum)) /\ exists ff_q_ged_orientation_hidden_sum_start. ff_u_ged_orientation_hidden_sum = ff_q_ged_orientation_hidden_sum_start * S ((S (0)) * ff_v_ged_orientation_hidden_sum) + (0))) /\ ((((exists ff_h_ged_orientation_hidden_sum_terminal. ff_h_ged_orientation_hidden_sum_terminal + S (Q) = S ((S (h)) * ff_v_ged_orientation_hidden_sum)) /\ exists ff_q_ged_orientation_hidden_sum_terminal. ff_u_ged_orientation_hidden_sum = ff_q_ged_orientation_hidden_sum_terminal * S ((S (h)) * ff_v_ged_orientation_hidden_sum) + (Q))) /\ forall ff_i_ged_orientation_hidden_sum. (exists ff_lt_ged_orientation_hidden_sum_bound. ff_lt_ged_orientation_hidden_sum_bound + S ff_i_ged_orientation_hidden_sum = h) -> exists ff_a_ged_orientation_hidden_sum ff_r_ged_orientation_hidden_sum ff_s_ged_orientation_hidden_sum. ((((exists ff_h_ged_orientation_hidden_sum_summand. ff_h_ged_orientation_hidden_sum_summand + S (ff_a_ged_orientation_hidden_sum) = S ((S (ff_i_ged_orientation_hidden_sum)) * qc)) /\ exists ff_q_ged_orientation_hidden_sum_summand. qb = ff_q_ged_orientation_hidden_sum_summand * S ((S (ff_i_ged_orientation_hidden_sum)) * qc) + (ff_a_ged_orientation_hidden_sum))) /\ ((((exists ff_h_ged_orientation_hidden_sum_partial. ff_h_ged_orientation_hidden_sum_partial + S (ff_r_ged_orientation_hidden_sum) = S ((S (ff_i_ged_orientation_hidden_sum)) * ff_v_ged_orientation_hidden_sum)) /\ exists ff_q_ged_orientation_hidden_sum_partial. ff_u_ged_orientation_hidden_sum = ff_q_ged_orientation_hidden_sum_partial * S ((S (ff_i_ged_orientation_hidden_sum)) * ff_v_ged_orientation_hidden_sum) + (ff_r_ged_orientation_hidden_sum))) /\ ((((exists ff_h_ged_orientation_hidden_sum_successor. ff_h_ged_orientation_hidden_sum_successor + S (ff_s_ged_orientation_hidden_sum) = S ((S (S ff_i_ged_orientation_hidden_sum)) * ff_v_ged_orientation_hidden_sum)) /\ exists ff_q_ged_orientation_hidden_sum_successor. ff_u_ged_orientation_hidden_sum = ff_q_ged_orientation_hidden_sum_successor * S ((S (S ff_i_ged_orientation_hidden_sum)) * ff_v_ged_orientation_hidden_sum) + (ff_s_ged_orientation_hidden_sum))) /\ ff_s_ged_orientation_hidden_sum = ff_r_ged_orientation_hidden_sum + ff_a_ged_orientation_hidden_sum)))))))) - 0033
specialize prime_scaled_half_quotient_sum_exists p - 0034
specialize prime_scaled_half_quotient_sum_exists h - 0035
specialize prime_scaled_half_quotient_sum_exists a - 0036
specialize prime_scaled_half_quotient_sum_exists x - 0037
specialize prime_scaled_half_quotient_sum_exists x1 - 0038
apply prime_scaled_half_quotient_sum_exists - 0039
exact hpodd - 0040
exact hprime - 0041
exact hhalf_exists_witness_witness - 0042
cases hquotient - 0043
cases hquotient_witness - 0044
cases hquotient_witness_witness - 0045
cases hquotient_witness_witness_witness - 0046
cases hquotient_witness_witness_witness_witness - 0047
cases hquotient_witness_witness_witness_witness_witness - 0048
cases hquotient_witness_witness_witness_witness_witness_witness - 0049
cases hquotient_witness_witness_witness_witness_witness_witness_witness - 0050
cases hquotient_witness_witness_witness_witness_witness_witness_witness_right - 0051
have hquotient_mod_count : ModEq(2,x13,x2)Exact native replay line
have hquotient_mod_count : exists fspm_u_ged_orientation_hidden_quotient_mod_count fspm_v_ged_orientation_hidden_quotient_mod_count. (x13) + 2 * fspm_u_ged_orientation_hidden_quotient_mod_count = (x2) + 2 * fspm_v_ged_orientation_hidden_quotient_mod_count - 0052
specialize gauss_eisenstein_sign_count_mod_quotient_sum p - 0053
specialize gauss_eisenstein_sign_count_mod_quotient_sum h - 0054
specialize gauss_eisenstein_sign_count_mod_quotient_sum a - 0055
specialize gauss_eisenstein_sign_count_mod_quotient_sum x - 0056
specialize gauss_eisenstein_sign_count_mod_quotient_sum x1 - 0057
specialize gauss_eisenstein_sign_count_mod_quotient_sum x7 - 0058
specialize gauss_eisenstein_sign_count_mod_quotient_sum x8 - 0059
specialize gauss_eisenstein_sign_count_mod_quotient_sum x9 - 0060
specialize gauss_eisenstein_sign_count_mod_quotient_sum x10 - 0061
specialize gauss_eisenstein_sign_count_mod_quotient_sum x11 - 0062
specialize gauss_eisenstein_sign_count_mod_quotient_sum x12 - 0063
specialize gauss_eisenstein_sign_count_mod_quotient_sum x3 - 0064
specialize gauss_eisenstein_sign_count_mod_quotient_sum x4 - 0065
specialize gauss_eisenstein_sign_count_mod_quotient_sum x5 - 0066
specialize gauss_eisenstein_sign_count_mod_quotient_sum x6 - 0067
specialize gauss_eisenstein_sign_count_mod_quotient_sum x13 - 0068
specialize gauss_eisenstein_sign_count_mod_quotient_sum x2 - 0069
apply gauss_eisenstein_sign_count_mod_quotient_sum - 0070
exact hpodd - 0071
exact haodd - 0072
exact hprime - 0073
exact hnotdiv - 0074
exact hhalf_exists_witness_witness - 0075
exact hquotient_witness_witness_witness_witness_witness_witness_witness_left - 0076
exact hquotient_witness_witness_witness_witness_witness_witness_witness_right_left - 0077
exact hgauss_witness_left_witness_witness_witness_witness_left - 0078
exact hgauss_witness_left_witness_witness_witness_witness_right - 0079
exact hquotient_witness_witness_witness_witness_witness_witness_witness_right_right - 0080
have hcount_mod_quotient : ModEq(2,x2,x13)Exact native replay line
have hcount_mod_quotient : exists fspm_u_ged_orientation_hidden_count_mod_quotient fspm_v_ged_orientation_hidden_count_mod_quotient. (x2) + 2 * fspm_u_ged_orientation_hidden_count_mod_quotient = (x13) + 2 * fspm_v_ged_orientation_hidden_count_mod_quotient - 0081
specialize mod_eq_symm 2 - 0082
specialize mod_eq_symm x13 - 0083
specialize mod_eq_symm x2 - 0084
apply mod_eq_symm - 0085
exact hquotient_mod_count - 0086
exists x7 - 0087
exists x8 - 0088
exists x9 - 0089
exists x10 - 0090
exists x11 - 0091
exists x12 - 0092
exists x2 - 0093
exists x13 - 0094
split - 0095
exact hquotient_witness_witness_witness_witness_witness_witness_witness_left - 0096
split - 0097
exact hquotient_witness_witness_witness_witness_witness_witness_witness_right_left - 0098
split - 0099
exact hquotient_witness_witness_witness_witness_witness_witness_witness_right_right - 0100
split - 0101
exact hgauss_witness_right - 0102
exact hcount_mod_quotient