Exact expanded PA statement
forall p n b c i j. p = S n -> ((~(p = 1) /\ forall wip_prime_left_orbit_prime wip_prime_right_orbit_prime. p = wip_prime_left_orbit_prime * wip_prime_right_orbit_prime -> wip_prime_left_orbit_prime = 1 \/ wip_prime_right_orbit_prime = 1)) -> (forall wip_index_orbit_prefix. (exists wip_gap_orbit_prefix_prefix_bound. wip_gap_orbit_prefix_prefix_bound + S wip_index_orbit_prefix = n) -> exists wip_mate_orbit_prefix. ((((exists wip_beta_height_orbit_prefix_decoded. wip_beta_height_orbit_prefix_decoded + S (wip_mate_orbit_prefix) = S ((S (wip_index_orbit_prefix)) * c)) /\ exists wip_beta_quotient_orbit_prefix_decoded. b = wip_beta_quotient_orbit_prefix_decoded * S ((S (wip_index_orbit_prefix)) * c) + (wip_mate_orbit_prefix))) /\ ((exists wip_gap_orbit_prefix_inverse_index_bound. wip_gap_orbit_prefix_inverse_index_bound + S wip_index_orbit_prefix = n) /\ ((exists wip_gap_orbit_prefix_inverse_mate_bound. wip_gap_orbit_prefix_inverse_mate_bound + S wip_mate_orbit_prefix = n) /\ (exists wip_mod_left_orbit_prefix_inverse_mod wip_mod_right_orbit_prefix_inverse_mod. ((S wip_index_orbit_prefix) * S wip_mate_orbit_prefix) + p * wip_mod_left_orbit_prefix_inverse_mod = 1 + p * wip_mod_right_orbit_prefix_inverse_mod))))) -> (exists wip_gap_orbit_source_bound. wip_gap_orbit_source_bound + S i = n) -> (((exists wip_beta_height_orbit_source_entry. wip_beta_height_orbit_source_entry + S (j) = S ((S (i)) * c)) /\ exists wip_beta_quotient_orbit_source_entry. b = wip_beta_quotient_orbit_source_entry * S ((S (i)) * c) + (j))) -> ((~(i = 0) /\ ~((S i) = n))) -> ~(i = j)Structural proof guide
Generated structural guide
A decoded inverse entry from a nonendpoint source is not fixed.
Use the direct prerequisites prime_inverse_prefix_fixed_cases as previously established PA formulas.
The proof proceeds by case analysis (2), intermediate claims (2), equality transport (2).
Referenced ingredients
Proof neighborhood
Direct dependencies
Direct dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Linked names are exact direct references. This Alpha-v16 checked-use theorem is independently kernel-checked when replayed; it is not a Stable theorem.
- 0001
intro p - 0002
intro n - 0003
intro b - 0004
intro c - 0005
intro i - 0006
intro j - 0007
intro hpn - 0008
intro hp - 0009
intro hprefix - 0010
intro hi - 0011
intro hat - 0012
intro hnonendpoint - 0013
cases hnonendpoint - 0014
intro heq - 0015
have hfixed : ((exists wip_beta_height_orbit_source_fixed. wip_beta_height_orbit_source_fixed + S (i) = S ((S (i)) * c)) /\ exists wip_beta_quotient_orbit_source_fixed. b = wip_beta_quotient_orbit_source_fixed * S ((S (i)) * c) + (i)) - 0016
rewrite <- heq at hat - 0017
rewrite <- heq at hat - 0018
exact hat - 0019
have hcases : i = 0 \/ S i = n - 0020
specialize prime_inverse_prefix_fixed_cases p - 0021
specialize prime_inverse_prefix_fixed_cases n - 0022
specialize prime_inverse_prefix_fixed_cases b - 0023
specialize prime_inverse_prefix_fixed_cases c - 0024
specialize prime_inverse_prefix_fixed_cases i - 0025
apply prime_inverse_prefix_fixed_cases - 0026
exact hpn - 0027
exact hp - 0028
exact hprefix - 0029
exact hi - 0030
exact hfixed - 0031
cases hcases - 0032
apply hnonendpoint_left - 0033
exact hcases_left - 0034
apply hnonendpoint_right - 0035
exact hcases_right