Documentation

TauCeti.RingTheory.PowerSeries.MultiplicativeSequence

The multiplicative sequence of a power series #

Let Q(t) = ∑ qₖ tᵏ be a power series over a commutative ring R. For n variables x₁, …, xₙ, the coefficient of tᵏ in ∏ᵢ Q(xᵢ t) is a symmetric polynomial in the xᵢ, so by the fundamental theorem of symmetric polynomials it is a unique polynomial Kₖ(e₁, …, eₙ) in the elementary symmetric polynomials. When Q(0) = 1, the family (Kₖ) is Hirzebruch's multiplicative sequence belonging to Q.

In characteristic class theory the xᵢ are the formal roots of a vector bundle and the eᵢ its Chern classes: for Q(t) = t / (1 - e⁻ᵗ) the value Kₖ(c₁, …, cₙ) is the degree-2k part of the Todd class of a complex bundle of rank n. The L and  classes come from even series Q(z): one first writes Q(z) = P(z²) and then applies the construction to P, whose roots are the squares xᵢ², so that the eᵢ are the elementary symmetric polynomials in the xᵢ², that is, the Pontryagin classes. This file develops the algebra that such definitions rest on: the root description of Kₖ in any commutative R-algebra, the Whitney (product) formula for roots, the normalization on a single root, stability under adjoining a zero root, the root description for even series, and the explicit polynomials K₁, K₂ and K₃.

Main definitions #

Main results #

References #

theorem PowerSeries.map_prod_rescale_X {R : Type u_1} [CommSemiring R] {σ : Type u_2} {S : Type u_3} [Fintype σ] [CommSemiring S] [Algebra R S] (Q : PowerSeries R) (φ : MvPolynomial σ R →ₐ[R] S) :
(map ↑φ) (∏ i : σ, (rescale (MvPolynomial.X i)) ((map (algebraMap R (MvPolynomial σ R))) Q)) = ∏ i : σ, (rescale (φ (MvPolynomial.X i))) ((map (algebraMap R S)) Q)

Pushing ∏ᵢ Q(xᵢ t) forward along an algebra homomorphism φ out of R[x] replaces each root xᵢ by φ xᵢ.

theorem PowerSeries.isSymmetric_coeff_prod_rescale_X {R : Type u_1} [CommSemiring R] {σ : Type u_2} [Fintype σ] (Q : PowerSeries R) (k : ℕ) :
((coeff k) (∏ i : σ, (rescale (MvPolynomial.X i)) ((map (algebraMap R (MvPolynomial σ R))) Q))).IsSymmetric

The coefficient of tᵏ in ∏ᵢ Q(xᵢ t) is a symmetric polynomial in the xᵢ.

noncomputable def PowerSeries.multiplicativeSequence {R : Type u_1} [CommRing R] (Q : PowerSeries R) (n k : ℕ) :

The multiplicative sequence belonging to the power series Q, in n variables: Q.multiplicativeSequence n k is the unique polynomial Kₖ such that substituting the elementary symmetric polynomials e₁, …, eₙ of x₁, …, xₙ gives the coefficient of tᵏ in ∏ᵢ Q(xᵢ t). The variable j : Fin n stands for e_{j+1}, following MvPolynomial.esymmAlgHom.

Instances For
    theorem PowerSeries.aeval_esymm_multiplicativeSequence {R : Type u_1} [CommRing R] (Q : PowerSeries R) (n k : ℕ) :
    (MvPolynomial.aeval fun (j : Fin n) => MvPolynomial.esymm (Fin n) R (↑j + 1)) (Q.multiplicativeSequence n k) = (coeff k) (∏ i : Fin n, (rescale (MvPolynomial.X i)) ((map (algebraMap R (MvPolynomial (Fin n) R))) Q))

    The defining property of PowerSeries.multiplicativeSequence: its value at the elementary symmetric polynomials e₁, …, eₙ is the coefficient of tᵏ in ∏ᵢ Q(xᵢ t).

    theorem PowerSeries.eq_multiplicativeSequence_iff {R : Type u_1} [CommRing R] {Q : PowerSeries R} {n k : ℕ} {p : MvPolynomial (Fin n) R} :
    p = Q.multiplicativeSequence n k ↔ (MvPolynomial.aeval fun (j : Fin n) => MvPolynomial.esymm (Fin n) R (↑j + 1)) p = (coeff k) (∏ i : Fin n, (rescale (MvPolynomial.X i)) ((map (algebraMap R (MvPolynomial (Fin n) R))) Q))

    PowerSeries.multiplicativeSequence is characterized by its value at the elementary symmetric polynomials.

    theorem PowerSeries.mk_aeval_multiplicativeSequence {R : Type u_1} [CommRing R] (Q : PowerSeries R) (n : ℕ) {S : Type u_2} [CommSemiring S] [Algebra R S] (s : Multiset S) (hs : s.card = n) :
    (mk fun (k : ℕ) => (MvPolynomial.aeval fun (j : Fin n) => s.esymm (↑j + 1)) (Q.multiplicativeSequence n k)) = (Multiset.map (fun (x : S) => (rescale x) ((map (algebraMap R S)) Q)) s).prod

    Root description of the multiplicative sequence: for a multiset s of n roots in a commutative R-algebra, ∑ₖ Kₖ(e₁(s), …, eₙ(s)) tᵏ = ∏_{x ∈ s} Q(x t).

    theorem PowerSeries.aeval_multiset_esymm_multiplicativeSequence {R : Type u_1} [CommRing R] (Q : PowerSeries R) (n k : ℕ) {S : Type u_2} [CommSemiring S] [Algebra R S] (s : Multiset S) (hs : s.card = n) :
    (MvPolynomial.aeval fun (j : Fin n) => s.esymm (↑j + 1)) (Q.multiplicativeSequence n k) = (coeff k) (Multiset.map (fun (x : S) => (rescale x) ((map (algebraMap R S)) Q)) s).prod

    Root description of the multiplicative sequence, coefficientwise: for a multiset s of n roots, Kₖ(e₁(s), …, eₙ(s)) is the coefficient of tᵏ in ∏_{x ∈ s} Q(x t).

    theorem PowerSeries.aeval_multiset_esymm_add_multiplicativeSequence {R : Type u_1} [CommRing R] (Q : PowerSeries R) (n k : ℕ) {S : Type u_2} [CommSemiring S] [Algebra R S] {m : ℕ} (s t : Multiset S) (hs : s.card = n) (ht : t.card = m) :
    (MvPolynomial.aeval fun (j : Fin (n + m)) => (s + t).esymm (↑j + 1)) (Q.multiplicativeSequence (n + m) k) = ∑ p ∈ Finset.antidiagonal k, (MvPolynomial.aeval fun (j : Fin n) => s.esymm (↑j + 1)) (Q.multiplicativeSequence n p.1) * (MvPolynomial.aeval fun (j : Fin m) => t.esymm (↑j + 1)) (Q.multiplicativeSequence m p.2)

    The Whitney formula for roots: on the union of a family s of n roots and a family t of m roots, Kₖ is the convolution of the values of the multiplicative sequence on s and on t.

    @[simp]

    In a single variable, e₁ is the root itself, so Kₖ(e₁) = qₖ e₁ᵏ.

    @[simp]

    The degree-zero term of the multiplicative sequence is Q(0) ^ n; in particular it is 1 when Q(0) = 1.

    @[simp]

    Stability of the multiplicative sequence: setting eₙ₊₁ = 0 in the polynomial for n + 1 roots gives Q(0) times the polynomial for n roots. When Q(0) = 1, the multiplicative sequence is therefore unchanged by adjoining a zero root.

    @[simp]
    theorem PowerSeries.aeval_pi_single_zero_multiplicativeSequence {R : Type u_1} [CommRing R] {Q : PowerSeries R} (n k : ℕ) {S : Type u_2} [CommSemiring S] [Algebra R S] (x : S) :

    Normalization of the multiplicative sequence: evaluating at e₁ = x and eⱼ = 0 for j ≥ 2 gives Q(0) ^ n qₖ xᵏ. When Q(0) = 1, the multiplicative sequence therefore sends the total class 1 + x to Q(x).

    theorem PowerSeries.expand_mk_aeval_multiplicativeSequence {R : Type u_1} [CommRing R] (Q : PowerSeries R) (n : ℕ) {S : Type u_2} [CommRing S] [Algebra R S] (s : Multiset S) (hs : s.card = n) :
    (expand 2 ⋯) (mk fun (k : ℕ) => (MvPolynomial.aeval fun (j : Fin n) => (Multiset.map (fun (x : S) => x ^ 2) s).esymm (↑j + 1)) (Q.multiplicativeSequence n k)) = (Multiset.map (fun (x : S) => (rescale x) ((map (algebraMap R S)) ((expand 2 ⋯) Q))) s).prod

    Multiplicative sequences of even series: for a multiset s of n roots, ∏_{x ∈ s} Q(x² t²) is obtained from ∑ₖ Kₖ(e₁(s²), …, eₙ(s²)) tᵏ, where Kₖ is the multiplicative sequence of Q and s² is the multiset of squares of the roots, by substituting t² for t. An even characteristic series is of the form Q(t²); for the L and  classes the roots are one degree-two root per oriented real 2-plane, and the eᵢ(s²) are the Pontryagin classes.

    theorem PowerSeries.aeval_multiset_esymm_sq_multiplicativeSequence {R : Type u_1} [CommRing R] (Q : PowerSeries R) (n k : ℕ) {S : Type u_2} [CommRing S] [Algebra R S] (s : Multiset S) (hs : s.card = n) :
    (MvPolynomial.aeval fun (j : Fin n) => (Multiset.map (fun (x : S) => x ^ 2) s).esymm (↑j + 1)) (Q.multiplicativeSequence n k) = (coeff (2 * k)) (Multiset.map (fun (x : S) => (rescale x) ((map (algebraMap R S)) ((expand 2 ⋯) Q))) s).prod

    Multiplicative sequences of even series, coefficientwise: for a multiset s of n roots, Kₖ(e₁(s²), …, eₙ(s²)) is the coefficient of t²ᵏ in ∏_{x ∈ s} Q(x² t²), where Kₖ is the multiplicative sequence of Q.

    The linear term of a multiplicative sequence: for Q(0) = 1, K₁ = q₁ e₁.

    The quadratic term of a multiplicative sequence: for Q(0) = 1 and at least two variables, K₂ = q₂ e₁² + (q₁² - 2 q₂) e₂.

    The cubic term of a multiplicative sequence: for Q(0) = 1 and at least three variables, K₃ = q₃ e₁³ + (q₁ q₂ - 3 q₃) e₁ e₂ + (q₁³ - 3 q₁ q₂ + 3 q₃) e₃.