Euler's totient product formula — Exact Proof Explorer

Prove the equality between an actual count of coprime residues and an independently computed Euler product.

84 theorem bodies · 266 proof edges · 3206 tactic lines · 18 layers

Alpha v34 checked-use · first admitted v29 · independently kernel and Lean verified; not Stable

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.

84 theorems
01234567891011121314151617
TP0001 · totient_coprime_decidable

Decide common-divisor coprimality from the actual canonical gcd; includes both zero coordinates.

layer 0 · 33 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0002 · totient_unit_bit_choice_exists

Construct the bit from the actual decidable unit predicate, not from a proposed totient value.

layer 1 · 17 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0004 · totient_unit_prefix_empty

The empty unit prefix has no undecided entries.

layer 0 · 12 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0005 · totient_unit_prefix_drop_last

Restrict a complete prefix of unit bits to its predecessor.

layer 0 · 13 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0006 · totient_unit_prefix_entry

Every decoded bit has the actual common-divisor meaning, regardless of the chosen beta encoding.

layer 0 · 27 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0007 · totient_unit_prefix_extend

Actually append the decided unit bit using beta-prefix extension.

layer 0 · 51 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0008 · totient_unit_prefix_exists

HA induction constructs the complete mask for every modulus and every finite interval.

layer 2 · 25 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0009 · totient_unit_prefix_all_bits

Unit masks consist of genuine zero/one entries.

layer 0 · 23 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP000A · totient_unit_prefix_equal_entry

All unit masks encode the same bits on their common interval.

layer 1 · 39 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP000B · totient_unit_count_exists

Construct an actual finite unit count, with both characteristic and sum traces witnessed.

layer 3 · 20 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP000C · totient_unit_count_functional

The count is independent of all beta-mask and sum-trace choices.

layer 2 · 85 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP000D · totient_unit_count_bounded

The unit count never exceeds the actual interval length.

layer 1 · 20 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP000E · totient_unit_count_zero_length

The auxiliary empty interval count is zero even at modulus zero; this does not assert Phi(0,0).

layer 0 · 11 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP000F · totient_unit_count_succ_decompose

A successor interval decomposes into its real previous count and the independently decided last unit bit.

layer 1 · 44 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0010 · totient_unit_count_succ_intro

The computed predecessor count and next bit construct the real successor count, not a supplied cardinality oracle.

layer 4 · 45 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0011 · totient_unit_choice_mod_one

Every integer, including zero, is a unit modulo one in the common-divisor sense.

layer 0 · 11 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0012 · totient_unit_count_mod_one

The independently constructed unit count modulo one equals the actual interval length.

layer 2 · 32 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0013 · totient_exists

Every positive modulus has a genuinely constructed totient on its canonical residue interval.

layer 4 · 11 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0014 · totient_functional

The totient value is unique independently of all finite encoding choices.

layer 3 · 14 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0015 · totient_bounded

The totient does not exceed its positive modulus.

layer 2 · 9 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0016 · totient_zero_excluded

Phi keeps the blueprint's positive-domain boundary; auxiliary empty counting does not manufacture Phi(0,0).

layer 0 · 5 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0017 · totient_one

Phi(1)=1 because the sole canonical residue zero is coprime to one.

layer 3 · 7 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0018 · totient_one_value

Construct the actual Phi(1,1) count witnesses, including the zero residue.

layer 4 · 16 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0019 · totient_exists_unique

Total uniquely determined totient on all positive naturals, independently of the still separate Euler product theorem.

layer 5 · 18 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP001A · totient_unit_count_length_transport

Transport the actual characteristic and summation traces along equality of interval lengths.

layer 0 · 11 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP001B · totient_unit_count_value_transport

Changing a proved equal terminal value preserves the real finite count.

layer 0 · 9 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP001C · totient_unit_count_zero_value

Construct the empty-interval zero count for every modulus, without admitting Phi at modulus zero.

layer 4 · 16 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP001E · totient_unit_count_interval_balance

HA induction proves equality of actual count increments on any two pointwise equivalent finite intervals.

layer 3 · 150 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP001F · totient_coprime_periodic

The actual common-divisor unit predicate is periodic modulo n, including the degenerate auxiliary modulus zero.

layer 0 · 40 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0020 · totient_unit_count_period_block

Each complete period contributes exactly the actual count of one canonical residue interval.

layer 5 · 50 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0021 · totient_unit_count_periods

The actual unit count on k complete periods equals k times the actual canonical count.

layer 6 · 59 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0022 · totient_unit_count_pointwise_equal

Equal actual unit predicates throughout a finite prefix have equal witnessed cardinalities.

layer 5 · 58 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0023 · totient_unit_count_modulus_transport

A proved equal modulus preserves the actual finite count without changing its interval.

layer 0 · 9 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0024 · totient_value_transport

A proved equal value preserves the positive-domain actual totient graph.

layer 0 · 8 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0025 · totient_modulus_transport

A proved equal positive modulus preserves both the unit predicate and its canonical residue interval.

layer 0 · 13 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0026 · totient_divisor_reflexive

Every natural divides itself with the explicit quotient one.

layer 0 · 3 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0027 · totient_coprime_divisor_right

Every divisor of a modulus is coprime to each unit of that modulus.

layer 0 · 20 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0028 · totient_coprime_product_iff

Units of a product are exactly the simultaneous units of both factors, without a coprime-moduli assumption.

layer 1 · 29 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0029 · totient_prime_coprime_iff_nondivisor

For a prime modulus the independently defined unit predicate is equivalent to nondivisibility.

layer 1 · 22 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP002A · totient_coprime_repeated_factor

Adjoining a factor already dividing the modulus leaves the unit predicate unchanged.

layer 2 · 29 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP002B · totient_coprime_cancel_unit_factor

Multiplication by a unit preserves common-divisor coprimality at every index.

layer 1 · 30 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0030 · totient_unit_choice_transport

Transport an actually decided characteristic bit along proved equivalence of its predicates.

layer 0 · 23 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0031 · totient_prime_block_end

The one first index and h remaining indices are exactly a block of width p=S h.

layer 0 · 12 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0032 · totient_count_defect_step

Subtraction-free cancellation propagates an exact finite count defect by one actual bit.

layer 0 · 16 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0033 · totient_new_prime_block_count_balance

A genuine p-wide block loses exactly the unit indicator of j at its first index p*j; all positive offsets are unchanged.

layer 5 · 125 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0034 · totient_new_prime_multiple_blocks_balance

Induction on the number of prime-width blocks counts all removed multiples using the actual unit count of their quotients.

layer 6 · 119 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0035 · totient_unit_count_new_prime_balance

For a new prime factor, the removed multiples account for exactly one old canonical unit count among p periods.

layer 7 · 54 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0036 · totient_unit_count_new_prime_factor

The actual canonical unit count of n*p is (p-1) times that of n when p is prime and coprime to n.

layer 8 · 32 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0037 · totient_repeated_prime_factor

Construct Phi(n*p,p*Phi(n)) when the prime p already divides n, using the actual finite unit-count identity.

layer 8 · 38 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0038 · totient_new_prime_factor

Construct Phi(n*p,(p-1)*Phi(n)) for a new prime factor; the predecessor is represented by p=S h.

layer 9 · 43 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0039 · totient_prime_value

A prime has exactly p-1 canonical units, with all beta witnesses constructed from Phi(1,1).

layer 10 · 26 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP003A · totient_prime_power_successor_value

Induction proves Phi(p^(e+1))=(p-1)*p^e for the independent unit count, starting with the prime case.

layer 11 · 83 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP003B · totient_prime_power_value

For every positive prime exponent, construct p-1, e-1, the actual preceding power, and its product giving the uniquely defined totient.

layer 12 · 60 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP003C · totient_coprime_divisor_left

Coprimality passes to any genuinely witnessed divisor on the left.

layer 1 · 19 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP003D · totient_coprime_multiplication_prime_step

One genuine prime-factor step preserves multiplicativity, separating the new-prime and repeated-prime cases constructively.

layer 10 · 104 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP003E · totient_coprime_multiplicative_from_prime_list

Induction on an actual beta-coded prime list proves multiplicativity; no sorting, supplied count, or omitted prime-factor case is assumed.

layer 11 · 167 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP003F · totient_coprime_multiplicative

The actual totient is multiplicative for every pair of positive coprime moduli; the needed finite prime list is constructed, not supplied.

layer 12 · 30 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0040 · totient_euler_factor_exists

Construct the arithmetic Euler factor from the actual prime and positive exponent, independently of any unit count.

layer 0 · 38 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0041 · totient_euler_factor_correct

The independently computed Euler factor equals the actual unit count of its prime power.

layer 12 · 48 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0042 · totient_euler_factor_functional

Predecessor and beta-encoding choices cannot change the computed arithmetic Euler factor.

layer 13 · 29 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0043 · totient_prime_entries_decoded_power

Every actually decoded support power has its prime, positive exponent and genuine power witnesses at the same index.

layer 0 · 48 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0044 · totient_prime_entries_selected_power

The selected prime/exponent beta entries refer to the same actual power, not merely some unrelated factorization witnesses.

layer 1 · 63 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0045 · totient_prime_support_powers_pairwise_coprime

Distinct prime entries force their actual prime-power factors to be pairwise coprime; injectivity supplies the needed inequality witnesses.

layer 1 · 87 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0046 · totient_pairwise_coprime_product_fold

Actual beta products of pairwise coprime moduli multiply their actual totient counts, including the empty product one.

layer 13 · 134 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0047 · totient_euler_factor_prefix_empty

The empty actual Euler-factor list has no entries or artificial zero-exponent factors.

layer 0 · 15 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0048 · totient_euler_factor_prefix_drop_last

A prefix retains all actual prime, exponent, factor, and preceding-power witnesses.

layer 0 · 16 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0049 · totient_euler_factor_prefix_append

Actually append the computed Euler factor while preserving every earlier beta-decoded value and its arithmetic witnesses.

layer 0 · 76 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP004A · totient_euler_factor_prefix_exists

HA induction constructs the full beta-coded list of p^(e-1)*(p-1) from actual positive prime-valuation entries.

layer 1 · 81 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP004B · totient_euler_factor_prefix_counts

The factor and support lists share the very same decoded prime and exponent at each index, so each Euler factor is the actual totient of its power.

layer 13 · 62 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP004C · totient_euler_product_from_support

The actual Euler-factor product over complete distinct prime-valuation support equals the independently defined unit count of n.

layer 14 · 52 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP004D · totient_euler_product_correct

Every genuine complete Euler product computes Phi; this is proved, not stipulated in either definition.

layer 15 · 29 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP004E · totient_euler_product_exists

For every positive n construct complete distinct valuation support, every preceding power and Euler factor, and their actual finite product.

layer 2 · 51 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP004F · totient_euler_product_functional

Changing the complete support ordering or any beta code cannot change the Euler-product value.

layer 16 · 17 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0050 · totient_euler_product_from_count

Every actual totient count has a fully constructed complete prime-support Euler product with that exact value.

layer 16 · 22 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0051 · totient_euler_product_iff

The independently defined actual unit count and complete prime-support Euler product are equivalent on precisely the positive domain.

layer 17 · 13 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0052 · totient_euler_product_one

At n=1 construct the genuinely empty prime support and empty Euler-factor product one, with every list code explicitly zero.

layer 1 · 24 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0053 · totient_euler_product_zero_excluded

The Euler product preserves the positive domain: no finite complete-support product is fabricated for zero.

layer 16 · 8 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable
TP0054 · totient_euler_product_formula

G006: for every positive n construct an actual prime factorization, the actual unit count, and its equal product of p^(Val(p,n)-1)*(p-1) over every distinct prime divisor; n=1 gives the empty product one.

layer 16 · 26 lines · Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable

Exactly 84 displayed theorems have independently verified Alpha checked-use authority; none is admitted to Stable. Body-only enrollment never grants checked theorem use.