Expand a polynomial by a factor of p, so ∑ aₙ xⁿ becomes ∑ aₙ xⁿᵖ. #
Main definitions #
- Polynomial.expand R p f: expand the polynomial- fwith coefficients in a commutative semiring- Rby a factor of p, so- expand R p (∑ aₙ xⁿ)is- ∑ aₙ xⁿᵖ.
- Polynomial.contract p f: the opposite of- expand, so it sends- ∑ aₙ xⁿᵖto- ∑ aₙ xⁿ.
Expand the polynomial by a factor of p, so ∑ aₙ xⁿ becomes ∑ aₙ xⁿᵖ.
Equations
- Polynomial.expand R p = { toRingHom := Polynomial.eval₂RingHom Polynomial.C (Polynomial.X ^ p), commutes' := ⋯ }
Instances For
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
theorem
Polynomial.coeff_expand_mul
{R : Type u}
[CommSemiring R]
{p : ℕ}
(hp : 0 < p)
(f : Polynomial R)
(n : ℕ)
 :
@[simp]
theorem
Polynomial.coeff_expand_mul'
{R : Type u}
[CommSemiring R]
{p : ℕ}
(hp : 0 < p)
(f : Polynomial R)
(n : ℕ)
 :
theorem
Polynomial.expand_injective
{R : Type u}
[CommSemiring R]
{n : ℕ}
(hn : 0 < n)
 :
Function.Injective ⇑(expand R n)
Expansion is injective.
theorem
Polynomial.expand_inj
{R : Type u}
[CommSemiring R]
{p : ℕ}
(hp : 0 < p)
{f g : Polynomial R}
 :
theorem
Polynomial.expand_eq_zero
{R : Type u}
[CommSemiring R]
{p : ℕ}
(hp : 0 < p)
{f : Polynomial R}
 :
theorem
Polynomial.expand_ne_zero
{R : Type u}
[CommSemiring R]
{p : ℕ}
(hp : 0 < p)
{f : Polynomial R}
 :
theorem
Polynomial.expand_eq_C
{R : Type u}
[CommSemiring R]
{p : ℕ}
(hp : 0 < p)
{f : Polynomial R}
{r : R}
 :
theorem
Polynomial.leadingCoeff_expand
{R : Type u}
[CommSemiring R]
{p : ℕ}
{f : Polynomial R}
(hp : 0 < p)
 :
theorem
Polynomial.monic_expand_iff
{R : Type u}
[CommSemiring R]
{p : ℕ}
{f : Polynomial R}
(hp : 0 < p)
 :
theorem
Polynomial.Monic.expand
{R : Type u}
[CommSemiring R]
{p : ℕ}
{f : Polynomial R}
(hp : 0 < p)
 :
f.Monic → ((Polynomial.expand R p) f).Monic
Alias of the reverse direction of Polynomial.monic_expand_iff.
theorem
Polynomial.map_expand
{R : Type u}
[CommSemiring R]
{S : Type v}
[CommSemiring S]
{p : ℕ}
{f : R →+* S}
{q : Polynomial R}
 :
@[simp]
@[simp]
theorem
Polynomial.expand_aeval
{R : Type u}
[CommSemiring R]
{A : Type u_1}
[Semiring A]
[Algebra R A]
(p : ℕ)
(P : Polynomial R)
(r : A)
 :
The opposite of expand: sends ∑ aₙ xⁿᵖ to ∑ aₙ xⁿ.
Equations
- Polynomial.contract p f = ∑ n ∈ Finset.range (f.natDegree + 1), (Polynomial.monomial n) (f.coeff (n * p))
Instances For
theorem
Polynomial.coeff_contract
{R : Type u}
[CommSemiring R]
{p : ℕ}
(hp : p ≠ 0)
(f : Polynomial R)
(n : ℕ)
 :
theorem
Polynomial.map_contract
{R : Type u}
[CommSemiring R]
{S : Type v}
[CommSemiring S]
{p : ℕ}
(hp : p ≠ 0)
{f : R →+* S}
{q : Polynomial R}
 :
theorem
Polynomial.contract_expand
{R : Type u}
[CommSemiring R]
(p : ℕ)
{f : Polynomial R}
(hp : p ≠ 0)
 :
@[simp]
theorem
Polynomial.contract_add
{R : Type u}
[CommSemiring R]
{p : ℕ}
(hp : p ≠ 0)
(f g : Polynomial R)
 :
theorem
Polynomial.contract_mul_expand
{R : Type u}
[CommSemiring R]
{p : ℕ}
(hp : p ≠ 0)
(f g : Polynomial R)
 :
@[simp]
theorem
Polynomial.isCoprime_expand
{R : Type u}
[CommSemiring R]
{f g : Polynomial R}
{p : ℕ}
(hp : p ≠ 0)
 :
theorem
Polynomial.expand_contract
{R : Type u}
[CommSemiring R]
(p : ℕ)
[CharP R p]
[NoZeroDivisors R]
{f : Polynomial R}
(hf : derivative f = 0)
(hp : p ≠ 0)
 :
theorem
Polynomial.expand_contract'
{R : Type u}
[CommSemiring R]
(p : ℕ)
[ExpChar R p]
[NoZeroDivisors R]
{f : Polynomial R}
(hf : derivative f = 0)
 :
theorem
Polynomial.expand_char
{R : Type u}
[CommSemiring R]
(p : ℕ)
[ExpChar R p]
(f : Polynomial R)
 :
theorem
Polynomial.rootMultiplicity_expand_pow
{R : Type u}
[CommRing R]
{p n : ℕ}
[ExpChar R p]
{f : Polynomial R}
{r : R}
 :
theorem
Polynomial.rootMultiplicity_expand
{R : Type u}
[CommRing R]
{p : ℕ}
[ExpChar R p]
{f : Polynomial R}
{r : R}
 :
theorem
Polynomial.isLocalHom_expand
(R : Type u)
[CommRing R]
[IsDomain R]
{p : ℕ}
(hp : 0 < p)
 :
IsLocalHom (expand R p)
theorem
Polynomial.of_irreducible_expand
{R : Type u}
[CommRing R]
[IsDomain R]
{p : ℕ}
(hp : p ≠ 0)
{f : Polynomial R}
(hf : Irreducible ((expand R p) f))
 :
theorem
Polynomial.of_irreducible_expand_pow
{R : Type u}
[CommRing R]
[IsDomain R]
{p : ℕ}
(hp : p ≠ 0)
{f : Polynomial R}
{n : ℕ}
 :
Irreducible ((expand R (p ^ n)) f) → Irreducible f