LeanPool.DemazureOperatorsLean.Demazure #
noncomputable def
Demazure.SwapVariablesFun
{n : ℕ}
(i j : Fin n)
(p : MvPolynomial (Fin n) ℂ)
:
MvPolynomial (Fin n) ℂ
The polynomial obtained by swapping the variables indexed by i and j.
Equations
- Demazure.SwapVariablesFun i j p = (MvPolynomial.renameEquiv ℂ (Equiv.swap i j)) p
Instances For
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
The algebra equivalence swapping the variables indexed by i and j.
Equations
Instances For
@[simp]
The polynomial equation of the unit circle in two variables.
Equations
- Demazure.circleEquation = MvPolynomial.X 0 ^ 2 + MvPolynomial.X 1 ^ 2 - MvPolynomial.C 1
Instances For
theorem
Demazure.swap_variables_ne_zero
{n : ℕ}
(i j : Fin (n + 1))
(p : MvPolynomial (Fin (n + 1)) ℂ)
:
p ≠ 0 → (SwapVariables i j) p ≠ 0
@[simp]
theorem
Demazure.swap_variables_symmetrical
{n : ℕ}
{i j : Fin (n + 1)}
{p : MvPolynomial (Fin (n + 1)) ℂ}
:
@[simp]
noncomputable def
Demazure.DemazureNumerator
{n : ℕ}
(i : Fin n)
(p : MvPolynomial (Fin (n + 1)) ℂ)
:
Polynomial (MvPolynomial (Fin n) ℂ)
The numerator used to define the Demazure operator in one distinguished variable.
Equations
- Demazure.DemazureNumerator i p = (MvPolynomial.finSuccEquiv ℂ n) ((Demazure.SwapVariables i.castSucc 0) (p - (Demazure.SwapVariables i.castSucc i.succ) p))
Instances For
theorem
Demazure.demazure_numerator_C_mul
{n : ℕ}
(i : Fin n)
(p : MvPolynomial (Fin (n + 1)) ℂ)
(r : ℂ)
:
DemazureNumerator i (MvPolynomial.C r * p) = Polynomial.C (MvPolynomial.C r) * DemazureNumerator i p
noncomputable def
Demazure.DemazureDenominator
{n : ℕ}
(i : Fin n)
:
Polynomial (MvPolynomial (Fin n) ℂ)
The monic denominator X - X_i used in the Demazure division step.
Equations
Instances For
noncomputable def
Demazure.DemazureFun
{n : ℕ}
(i : Fin n)
(p : MvPolynomial (Fin (n + 1)) ℂ)
:
MvPolynomial (Fin (n + 1)) ℂ
The Demazure operator as a function on multivariate polynomials.
Equations
Instances For
theorem
Demazure.poly_mul_cancel
{n : ℕ}
{p q r : Polynomial (MvPolynomial (Fin n) ℂ)}
(hr : r ≠ 0)
:
theorem
Demazure.poly_exact_div_mul_cancel
{n : ℕ}
{p q : Polynomial (MvPolynomial (Fin n) ℂ)}
(_q_monic : q.Monic)
(exact_div : p %ₘ q = 0)
:
The Demazure operator as a complex-linear map.
Equations
- Demazure.DemazureLinear i = { toFun := Demazure.DemazureFun i, map_add' := ⋯, map_smul' := ⋯ }
Instances For
theorem
Demazure.one_of_div_by_monic_self
{n : ℕ}
(p : Polynomial (MvPolynomial (Fin n) ℂ))
(_h : p.Monic)
:
theorem
Demazure.demazure_not_multiplicative
{n : ℕ}
(i : Fin n)
:
∃ (p : MvPolynomial (Fin (n + 1)) ℂ) (q : MvPolynomial (Fin (n + 1)) ℂ),
(DemazureLinear i) (p * q) ≠ (DemazureLinear i) p * (DemazureLinear i) q