theorem
ReesAlgebra.ext
{A : Type u_1}
{inst✝ : CommSemiring A}
{ι : Type u_2}
{F : ι → Ideal A}
{x y : ReesAlgebra F}
(val : x.val = y.val)
:
x = y
noncomputable instance
ReesAlgebra.instZero
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
:
Zero (ReesAlgebra F)
Equations
- ReesAlgebra.instZero F = { zero := { val := 0 } }
theorem
ReesAlgebra.zero_def
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
:
0 = { val := 0 }
noncomputable instance
ReesAlgebra.instSMulNat
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
:
SMul ℕ (ReesAlgebra F)
Equations
- ReesAlgebra.instSMulNat F = { smul := fun (n : ℕ) (x : ReesAlgebra F) => { val := n • x.val } }
theorem
ReesAlgebra.nsmul_def
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
(n : ℕ)
(x : ReesAlgebra F)
:
noncomputable instance
ReesAlgebra.instAdd
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
:
Add (ReesAlgebra F)
Equations
- ReesAlgebra.instAdd F = { add := fun (x y : ReesAlgebra F) => { val := x.val + y.val } }
theorem
ReesAlgebra.add_def
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
{x y : ReesAlgebra F}
:
theorem
ReesAlgebra.add_val
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
{x y : ReesAlgebra F}
:
theorem
ReesAlgebra.injective_val
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
:
noncomputable instance
ReesAlgebra.instAddCommMonoid
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
:
Equations
noncomputable def
ReesAlgebra.mul'
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
theorem
ReesAlgebra.mul'_of_of
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
(v w : ι →₀ ℕ)
(x : ↥(F ^ v))
(y : ↥(F ^ w))
:
(ReesAlgebra.mul' ((DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) v) x))
((DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) w) y) = (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) (v + w)) ⟨↑x * ↑y, ⋯⟩
noncomputable instance
ReesAlgebra.instMul
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
Mul (ReesAlgebra F)
Equations
- ReesAlgebra.instMul = { mul := fun (x y : ReesAlgebra F) => { val := (ReesAlgebra.mul' x.val) y.val } }
theorem
ReesAlgebra.mul_def
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
(x y : ReesAlgebra F)
:
theorem
ReesAlgebra.mul_val
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
(x y : ReesAlgebra F)
:
@[simp]
theorem
ReesAlgebra.mul_of_of
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
(v w : ι →₀ ℕ)
(x : ↥(F ^ v))
(y : ↥(F ^ w))
:
noncomputable instance
ReesAlgebra.instOne
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
One (ReesAlgebra F)
Equations
- ReesAlgebra.instOne = { one := { val := (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) 0) ⟨1, ⋯⟩ } }
theorem
ReesAlgebra.one_def
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
1 = { val := (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) 0) ⟨1, ⋯⟩ }
theorem
ReesAlgebra.one_val
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
ReesAlgebra.val 1 = (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) 0) ⟨1, ⋯⟩
instance
ReesAlgebra.instLeftDistribClass
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
instance
ReesAlgebra.instRightDistribClass
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
theorem
ReesAlgebra.induction_on
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
(P : ReesAlgebra F → Prop)
(H_zero : P 0)
(H_basic : ∀ (v : ι →₀ ℕ) (x : ↥(F ^ v)), P { val := (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) v) x })
(H_plus : ∀ (x y : ReesAlgebra F), P x → P y → P (x + y))
(x : ReesAlgebra F)
:
P x
noncomputable instance
ReesAlgebra.instSemigroup
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
Semigroup (ReesAlgebra F)
Equations
noncomputable instance
ReesAlgebra.instMulOneClass
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
Equations
noncomputable instance
ReesAlgebra.instMonoid
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
Monoid (ReesAlgebra F)
Equations
- ReesAlgebra.instMonoid = Monoid.mk ⋯ ⋯ npowRecAuto ⋯ ⋯
noncomputable instance
ReesAlgebra.instCommMonoid
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
Equations
noncomputable instance
ReesAlgebra.instMonoidWithZero
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
Equations
noncomputable instance
ReesAlgebra.instCommSemiring
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
Equations
noncomputable def
ReesAlgebra.algebraMap'
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
:
A →+* ReesAlgebra F
Equations
- ReesAlgebra.algebraMap' F = { toFun := fun (a : A) => { val := (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) 0) ⟨a, ⋯⟩ }, map_one' := ⋯, map_mul' := ⋯, map_zero' := ⋯, map_add' := ⋯ }
Instances For
@[simp]
theorem
ReesAlgebra.algebraMap'_apply_val
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
(a : A)
:
((ReesAlgebra.algebraMap' F) a).val = (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) 0) ⟨a, ⋯⟩
noncomputable instance
ReesAlgebra.instAlgebra
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
Algebra A (ReesAlgebra F)
Equations
- ReesAlgebra.instAlgebra = (ReesAlgebra.algebraMap' F).toAlgebra
theorem
ReesAlgebra.algebraMap_eq
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
:
theorem
ReesAlgebra.algebraMap_apply_val
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
(a : A)
:
((algebraMap A (ReesAlgebra F)) a).val = (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) 0) ⟨a, ⋯⟩
theorem
ReesAlgebra.algebraMap'_apply
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
(a : A)
:
(ReesAlgebra.algebraMap' F) a = { val := (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) 0) ⟨a, ⋯⟩ }
theorem
ReesAlgebra.smul_of
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
(a : A)
(v : ι →₀ ℕ)
(x : ↥(F ^ v))
:
theorem
ReesAlgebra.smul_of_val
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
(a : A)
(v : ι →₀ ℕ)
(x : ↥(F ^ v))
:
theorem
ReesAlgebra.smul_val
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
(a : A)
(x : ReesAlgebra F)
:
noncomputable def
ReesAlgebra.single
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
(v : ι →₀ ℕ)
:
↥(F ^ v) →ₗ[A] ReesAlgebra F
Equations
- ReesAlgebra.single F v = { toFun := fun (x : ↥(F ^ v)) => { val := (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) v) x }, map_add' := ⋯, map_smul' := ⋯ }
Instances For
@[simp]
theorem
ReesAlgebra.single_apply_val
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
(v : ι →₀ ℕ)
(x : ↥(F ^ v))
:
((ReesAlgebra.single F v) x).val = (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) v) x
theorem
ReesAlgebra.single_def
{A : Type u_1}
[CommSemiring A]
{ι : Type u_2}
{F : ι → Ideal A}
[DecidableEq ι]
(v : ι →₀ ℕ)
(x : ↥(F ^ v))
:
(ReesAlgebra.single F v) x = { val := (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) v) x }
noncomputable instance
ReesAlgebra.instNeg
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
:
Neg (ReesAlgebra F)
Equations
- ReesAlgebra.instNeg F = { neg := fun (x : ReesAlgebra F) => { val := -x.val } }
theorem
ReesAlgebra.neg_def
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
(x : ReesAlgebra F)
:
noncomputable instance
ReesAlgebra.instSub
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
:
Sub (ReesAlgebra F)
Equations
- ReesAlgebra.instSub F = { sub := fun (x y : ReesAlgebra F) => { val := x.val - y.val } }
theorem
ReesAlgebra.sub_def
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
(x y : ReesAlgebra F)
:
noncomputable instance
ReesAlgebra.instSMulInt
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
:
SMul ℤ (ReesAlgebra F)
Equations
- ReesAlgebra.instSMulInt F = { smul := fun (n : ℤ) (x : ReesAlgebra F) => { val := n • x.val } }
noncomputable instance
ReesAlgebra.instAddCommGroup
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
:
Equations
noncomputable instance
ReesAlgebra.instCommRing
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
:
CommRing (ReesAlgebra F)
Equations
noncomputable def
ReesAlgebra.grading
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
(v : ι →₀ ℕ)
:
Submodule A (ReesAlgebra F)
Equations
Instances For
instance
ReesAlgebra.instGradedOneFinsuppNatSubmoduleGrading
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
:
instance
ReesAlgebra.instGradedMulFinsuppNatSubmoduleGrading
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
:
instance
ReesAlgebra.instGradedMonoidFinsuppNatSubmoduleGrading
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
:
noncomputable def
ReesAlgebra.decomposeAux
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
noncomputable def
ReesAlgebra.decompose
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
:
ReesAlgebra F →ₗ[A] DirectSum (ι →₀ ℕ) fun (v : ι →₀ ℕ) => ↥(ReesAlgebra.grading F v)
Equations
- ReesAlgebra.decompose F = ReesAlgebra.decomposeAux F ∘ₗ { toFun := ReesAlgebra.val, map_add' := ⋯, map_smul' := ⋯ }
Instances For
@[simp]
theorem
ReesAlgebra.decompose_single
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
(v : ι →₀ ℕ)
(x : ↥(F ^ v))
:
(ReesAlgebra.decompose F) ((ReesAlgebra.single F v) x) = (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(ReesAlgebra.grading F v)) v) ⟨(ReesAlgebra.single F v) x, ⋯⟩
@[simp]
theorem
ReesAlgebra.decompose_val_of
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
(v : ι →₀ ℕ)
(x : ↥(F ^ v))
:
(ReesAlgebra.decompose F) { val := (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(F ^ v)) v) x } = (DirectSum.of (fun (v : ι →₀ ℕ) => ↥(ReesAlgebra.grading F v)) v) ⟨(ReesAlgebra.single F v) x, ⋯⟩
noncomputable instance
ReesAlgebra.instGradedAlgebraFinsuppNatGrading
{A : Type u_1}
[CommRing A]
{ι : Type u_2}
(F : ι → Ideal A)
[DecidableEq ι]
: