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.
Exact expanded first-order arithmetic statement
forall k n d K N a ga A G. k = d * K -> n = d * N -> A = k * a -> G = d * ga -> (forall frp_divisor_gcomp_scaled_component_coprime. (exists frp_left_factor_gcomp_scaled_component_coprime. K = frp_divisor_gcomp_scaled_component_coprime * frp_left_factor_gcomp_scaled_component_coprime) -> (exists frp_right_factor_gcomp_scaled_component_coprime. N = frp_divisor_gcomp_scaled_component_coprime * frp_right_factor_gcomp_scaled_component_coprime) -> frp_divisor_gcomp_scaled_component_coprime = 1) -> ((((exists hag_left_factor_gcomp_scaled_component_base. a = ga * hag_left_factor_gcomp_scaled_component_base) /\ (exists hag_right_factor_gcomp_scaled_component_base. N = ga * hag_right_factor_gcomp_scaled_component_base)) /\ forall hag_divisor_gcomp_scaled_component_base. (exists hag_common_left_gcomp_scaled_component_base. a = hag_divisor_gcomp_scaled_component_base * hag_common_left_gcomp_scaled_component_base) -> (exists hag_common_right_gcomp_scaled_component_base. N = hag_divisor_gcomp_scaled_component_base * hag_common_right_gcomp_scaled_component_base) -> exists hag_greatest_factor_gcomp_scaled_component_base. ga = hag_divisor_gcomp_scaled_component_base * hag_greatest_factor_gcomp_scaled_component_base)) -> ((((exists hag_left_factor_gcomp_scaled_component_result. A = G * hag_left_factor_gcomp_scaled_component_result) /\ (exists hag_right_factor_gcomp_scaled_component_result. n = G * hag_right_factor_gcomp_scaled_component_result)) /\ forall hag_divisor_gcomp_scaled_component_result. (exists hag_common_left_gcomp_scaled_component_result. A = hag_divisor_gcomp_scaled_component_result * hag_common_left_gcomp_scaled_component_result) -> (exists hag_common_right_gcomp_scaled_component_result. n = hag_divisor_gcomp_scaled_component_result * hag_common_right_gcomp_scaled_component_result) -> exists hag_greatest_factor_gcomp_scaled_component_result. G = hag_divisor_gcomp_scaled_component_result * hag_greatest_factor_gcomp_scaled_component_result))Constructive proof overview
Generated structural guide
After factoring a common divisor from a multiplier and comparison input, the gcd is exactly that divisor times the gcd of the remaining coprime component.
The unchanged tactic script uses 4 declared prerequisites and contains 46 exact native proof lines.
Alpha v34 checked-use · first admitted v25 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
GC0010 crt_product_witness GC000F crt_is_gcd_coprime_factor_remove mul_assoc Stable theorem; checked-use authorized GC000E crt_is_gcd_scaleDirect 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.
Named ingredients (3)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–15
03Use earlier factsL16–17
04Separate the logical casesL18–18
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L18
cases crt_product_witness
05Establish hbaseL19–28
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply crt is gcd coprime factor remove.
- L19
have hbase : IsGCD(ga,x,N)Definitions: IsGCD - L20
specialize crt_is_gcd_coprime_factor_remove K - L21
specialize crt_is_gcd_coprime_factor_remove a - L22
specialize crt_is_gcd_coprime_factor_remove N - L23
specialize crt_is_gcd_coprime_factor_remove ga - L24
specialize crt_is_gcd_coprime_factor_remove x - L25
apply crt_is_gcd_coprime_factor_remove - L26
exact crt_product_witness_witness - L27
exact hcoprime - L28
exact hga
06Use earlier factsL29–36
Instantiate or apply named facts and discharge the corresponding proof obligations.
07Calculate and transport equalitiesL37–37
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L37
trans k * a
08Use earlier factsL38–38
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L38
exact hA
09Calculate and transport equalitiesL39–40
10Use earlier factsL41–41
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L41
apply mul_assoc
11Calculate and transport equalitiesL42–43
Original exact command ledger · 46 lines
- 0001
intro k - 0002
intro n - 0003
intro d - 0004
intro K - 0005
intro N - 0006
intro a - 0007
intro ga - 0008
intro A - 0009
intro G - 0010
intro hk - 0011
intro hn - 0012
intro hA - 0013
intro hG - 0014
intro hcoprime - 0015
intro hga - 0016
specialize crt_product_witness K - 0017
specialize crt_product_witness a - 0018
cases crt_product_witness - 0019
have hbase : (((exists hag_left_factor_gcomp_scaled_component_coprime_product. x = ga * hag_left_factor_gcomp_scaled_component_coprime_product) /\ (exists hag_right_factor_gcomp_scaled_component_coprime_product. N = ga * hag_right_factor_gcomp_scaled_component_coprime_product)) /\ forall hag_divisor_gcomp_scaled_component_coprime_product. (exists hag_common_left_gcomp_scaled_component_coprime_product. x = hag_divisor_gcomp_scaled_component_coprime_product * hag_common_left_gcomp_scaled_component_coprime_product) -> (exists hag_common_right_gcomp_scaled_component_coprime_product. N = hag_divisor_gcomp_scaled_component_coprime_product * hag_common_right_gcomp_scaled_component_coprime_product) -> exists hag_greatest_factor_gcomp_scaled_component_coprime_product. ga = hag_divisor_gcomp_scaled_component_coprime_product * hag_greatest_factor_gcomp_scaled_component_coprime_product) - 0020
specialize crt_is_gcd_coprime_factor_remove K - 0021
specialize crt_is_gcd_coprime_factor_remove a - 0022
specialize crt_is_gcd_coprime_factor_remove N - 0023
specialize crt_is_gcd_coprime_factor_remove ga - 0024
specialize crt_is_gcd_coprime_factor_remove x - 0025
apply crt_is_gcd_coprime_factor_remove - 0026
exact crt_product_witness_witness - 0027
exact hcoprime - 0028
exact hga - 0029
specialize crt_is_gcd_scale d - 0030
specialize crt_is_gcd_scale x - 0031
specialize crt_is_gcd_scale N - 0032
specialize crt_is_gcd_scale ga - 0033
specialize crt_is_gcd_scale A - 0034
specialize crt_is_gcd_scale n - 0035
specialize crt_is_gcd_scale G - 0036
apply crt_is_gcd_scale - 0037
trans k * a - 0038
exact hA - 0039
rewrite hk - 0040
trans d * (K * a) - 0041
apply mul_assoc - 0042
rewrite crt_product_witness_witness - 0043
refl - 0044
exact hn - 0045
exact hG - 0046
exact hbase
Separate complete second-wave branches: Full G011 proof · Alpha v27.