OAI/NumberTheory/Ostmann/Construction/PrimeProductMatching.lean
5 declarations, 0 contain sorry, 0 declared as axioms
Equal distinct-prime products give the unique actual slot matching
- theorem
OAI.Ostmann.prime_dvd_prime_productline 15 - theorem
OAI.Ostmann.prime_product_matching_exists_uniqueline 21 - theorem
OAI.Ostmann.prime_product_eq_iff_matchingline 49 - theorem
OAI.Ostmann.diagonal_prime_matchingline 62Source documentation
Prime factors exceed the leaf frequencies, so the zero transfer numerator has a common frequency and a unique matching of its constituent prime slots.
theorem diagonal_prime_matching {I J : Type*} [Fintype I] [Fintype J] (p : I → ℕ) (q : J → ℕ) (hp : ∀ i, (p i).Prime) (hq : ∀ j, (q j).Prime) (hinjp : Function.Injective p) (hinjq : Function.Injective q) (v w : ℤ) (hv : v ≠ 0) (hw : w ≠ 0) (hvp : ∀ i, v.natAbs < p i) (hwq : ∀ j, w.natAbs < q j) : v * (∏ j, q j : ℕ) = w * (∏ i, p i : ℕ) ↔ v = w ∧ ∃! e : I ≃ J, ∀ i, p i = q (e i) := by … - theorem
OAI.Ostmann.prime_product_matching_sumline 81Source documentation
Replacing the equal-product indicator by the sum over actual matchings introduces no multiplicity, because all prime slots are distinct.
theorem prime_product_matching_sum {I J : Type*} [Fintype I] [Fintype J] (p : I → ℕ) (q : J → ℕ) (hp : ∀ i, (p i).Prime) (hq : ∀ j, (q j).Prime) (hinjp : Function.Injective p) (hinjq : Function.Injective q) (z : ℂ) : (if (∏ i, p i) = ∏ j, q j then z else 0) = ∑ e : I ≃ J, if ∀ i, p i = q (e i) then z else 0 := by …