Documentation

Atlas.LieGroups.code.SyzygiesKoszul

def IsRegularSequence {A : Type u_1} [CommRing A] {m : } (f : Fin mA) :
Instances For
    structure IsGradedSModule {k : Type u_1} {S : Type u_2} {M : Type u_3} [CommRing k] [Ring S] [Algebra k S] [AddCommGroup M] [Module S M] [Module k M] [IsScalarTower k S M] (𝒮 : Submodule k S) [GradedAlgebra 𝒮] ( : Submodule k M) :
    Instances For
      def IsConnectedGrading (k : Type u_1) (S : Type u_2) [CommRing k] [Ring S] [Algebra k S] (𝒮 : Submodule k S) [GradedAlgebra 𝒮] :
      Instances For
        def augmentationIdealGraded {k : Type u_1} {S : Type u_2} [CommRing k] [CommRing S] [Algebra k S] (𝒮 : Submodule k S) [GradedAlgebra 𝒮] :
        Instances For
          theorem augmentationIdealGraded_component_mem {k : Type u_1} {S : Type u_2} [CommRing k] [CommRing S] [Algebra k S] (𝒮 : Submodule k S) [GradedAlgebra 𝒮] (r : S) (hr : r augmentationIdealGraded 𝒮) (j : ) :
          noncomputable def hilbertSeries {k : Type u_1} {M : Type u_2} [Field k] [AddCommGroup M] [Module k M] ( : Submodule k M) :
          Instances For
            noncomputable def augmentation_ideal_poly (k : Type u_1) [Field k] (n : ) :
            Instances For
              theorem homog_in_aug_smul {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] ( : Submodule k' M) (hgr : IsGradedSModule 𝒮 ) (d : ) (x : M) (hxd : x d) (hxP : x augmentationIdealGraded 𝒮 ) :
              x Submodule.span k' (⋃ (j : ), ⋃ (_ : 0 < j), ⋃ (i : ), ⋃ (_ : i + j = d), Set.image2 HSMul.hSMul (𝒮 j) ( i))
              theorem exists_homogeneous_span_quotient {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] ( : Submodule k' M) (hgr : IsGradedSModule 𝒮 ) (hfin : FiniteDimensional k' (M augmentationIdealGraded 𝒮 )) :
              ∃ (T : Finset M), (∀ tT, ∃ (d : ), t d) Submodule.span k' ((augmentationIdealGraded 𝒮 ).mkQ '' T) =
              theorem homog_smul_component_mem_aug {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] ( : Submodule k' M) (hgr : IsGradedSModule 𝒮 ) [DirectSum.Decomposition ] (d j : ) (rj : S) (hrj_homog : rj 𝒮 j) (hrj_aug : rj augmentationIdealGraded 𝒮) (n : M) :
              theorem aug_smul_graded_component {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] ( : Submodule k' M) (hgr : IsGradedSModule 𝒮 ) [DirectSum.Decomposition ] (d : ) (z : M) (hz : z augmentationIdealGraded 𝒮 ) :
              theorem decompose_mod_P {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] ( : Submodule k' M) (hgr : IsGradedSModule 𝒮 ) (T : Finset M) (hThom : tT, ∃ (d : ), t d) (hTspan : Submodule.span k' ((augmentationIdealGraded 𝒮 ).mkQ '' T) = ) (d : ) (m : M) (hm : m d) :
              vSubmodule.span k' (T ( d)), m - v d m - v augmentationIdealGraded 𝒮
              theorem lemma_12_3_i_generators {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] (hconn : IsConnectedGrading k' S 𝒮) {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] ( : Submodule k' M) (hgr : IsGradedSModule 𝒮 ) (hfin : FiniteDimensional k' (M augmentationIdealGraded 𝒮 )) :
              theorem graded_nakayama {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] (_hconn : IsConnectedGrading k' S 𝒮) {N : Type u_4} [AddCommGroup N] [Module S N] [Module k' N] [IsScalarTower k' S N] (𝒩 : Submodule k' N) (hgr : IsGradedSModule 𝒮 𝒩) (hdeg0 : 𝒩 0 = ) (hSN : ∀ (d : ), n𝒩 d, n Submodule.span k' (⋃ (j : ), ⋃ (_ : 0 < j), ⋃ (i : ), ⋃ (_ : i + j = d), Set.image2 HSMul.hSMul (𝒮 j) (𝒩 i))) (n : N) :
              n = 0
              theorem kernel_has_graded_nakayama_data {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] (hconn : IsConnectedGrading k' S 𝒮) {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] ( : Submodule k' M) (hgr : IsGradedSModule 𝒮 ) {F : Type u_5} [AddCommGroup F] [Module S F] [Module k' F] [IsScalarTower k' S F] [Module.Free S F] (iMF : M →ₗ[S] F) (sFM : F →ₗ[S] M) (h_split : sFM ∘ₗ iMF = LinearMap.id) :
              ∃ (𝒦 : Submodule k' sFM.ker), IsGradedSModule 𝒮 𝒦 𝒦 0 = ∀ (d : ), n𝒦 d, n Submodule.span k' (⋃ (j : ), ⋃ (_ : 0 < j), ⋃ (i : ), ⋃ (_ : i + j = d), Set.image2 HSMul.hSMul (𝒮 j) (𝒦 i))
              theorem kernel_vanishes_of_graded_split {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] (hconn : IsConnectedGrading k' S 𝒮) {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] ( : Submodule k' M) (hgr : IsGradedSModule 𝒮 ) {F : Type u_5} [AddCommMonoid F] [Module S F] [Module.Free S F] (iMF : M →ₗ[S] F) (sFM : F →ₗ[S] M) (h_split : sFM ∘ₗ iMF = LinearMap.id) :
              theorem graded_projective_is_free {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] (hconn : IsConnectedGrading k' S 𝒮) {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] [Module.Projective S M] ( : Submodule k' M) (hgr : IsGradedSModule 𝒮 ) :
              def quotientGrading {k' : Type u_2} {S : Type u_3} [CommRing k'] [CommRing S] [Algebra k' S] {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] ( : Submodule k' M) (i : ) :
              Instances For
                theorem graded_free_module_dim_conv {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] (hconn : IsConnectedGrading k' S 𝒮) {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] [Module.Projective S M] ( : Submodule k' M) (hgr : IsGradedSModule 𝒮 ) (hfindim : ∀ (i : ), FiniteDimensional k' ( i)) (n : ) :
                (Module.finrank k' ( n)) = pFinset.antidiagonal n, (Module.finrank k' (𝒮 p.1)) * (Module.finrank k' (quotientGrading 𝒮 p.2))
                theorem lemma_12_3_ii_hilbert_series {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] (hconn : IsConnectedGrading k' S 𝒮) {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] [Module.Projective S M] ( : Submodule k' M) (hgr : IsGradedSModule 𝒮 ) (hfindim : ∀ (i : ), FiniteDimensional k' ( i)) :
                theorem lemma_12_3_ii_graded_projective_free {k' : Type u_2} {S : Type u_3} [Field k'] [CommRing S] [Algebra k' S] (𝒮 : Submodule k' S) [GradedAlgebra 𝒮] (hconn : IsConnectedGrading k' S 𝒮) {M : Type u_4} [AddCommGroup M] [Module S M] [Module k' M] [IsScalarTower k' S M] [Module.Projective S M] ( : Submodule k' M) (hgr : IsGradedSModule 𝒮 ) (hfindim : ∀ (i : ), FiniteDimensional k' ( i)) :
                structure KoszulComplex (k : Type u_2) [Field k] (n : ) :
                Type u_2
                Instances For
                  theorem split_exact_tensor_preserves_resolution (k : Type u_2) [Field k] (n : ) (M : Type u_3) [AddCommGroup M] [Module (MvPolynomial (Fin n) k) M] :
                  ∃ (B_M : Type u_4) (d : (i : ) → i < n → (Fin (n.choose (i + 1)) × B_M →₀ MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] Fin (n.choose i) × B_M →₀ MvPolynomial (Fin n) k) (ε : (Fin (n.choose 0) × B_M →₀ MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] M), Function.Surjective ε (∀ (hn : 0 < n), ε.ker = (d 0 hn).range) (n = 0ε.ker = ) (∀ (i : ) (hi : i < n) (hi' : i + 1 < n), (d i hi).ker = (d (i + 1) hi').range) ∀ (hn : 0 < n), Function.Injective (d (n - 1) )
                  theorem prop_12_4_ext_vanishing (k : Type u_1) [Field k] (n : ) (M : Type u_2) [AddCommGroup M] [Module (MvPolynomial (Fin n) k) M] :
                  ∃ (ι : Fin (n + 1)Type u_3) (d : (i : ) → (x : i < n) → (ι i + 1, →₀ MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] ι i, →₀ MvPolynomial (Fin n) k) (ε : (ι 0, →₀ MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] M), Function.Surjective ε (∀ (hn : 0 < n), ε.ker = (d 0 hn).range) (n = 0ε.ker = ) (∀ (i : ) (hi : i < n) (hi' : i + 1 < n), (d i hi).ker = (d (i + 1) hi').range) ∀ (hn : 0 < n), Function.Injective (d (n - 1) )
                  theorem syzygy_ext_vanishing (k : Type u_2) [Field k] (n : ) (M : Type u_3) [AddCommGroup M] [Module (MvPolynomial (Fin n) k) M] [Module.Finite (MvPolynomial (Fin n) k) M] :
                  ∃ (r : Fin (n + 1)) (d : (i : ) → (x : i < n) → (Fin (r i + 1, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] Fin (r i, )MvPolynomial (Fin n) k) (ε : (Fin (r 0, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] M), Function.Surjective ε (∀ (hn : 0 < n), ε.ker = (d 0 hn).range) (∀ (i : ) (hi : i < n) (hi' : i + 1 < n), (d i hi).ker = (d (i + 1) hi').range) ∀ (hn : 0 < n), Function.Injective (d (n - 1) )
                  theorem nth_syzygy_is_free (k : Type u_1) [Field k] (n : ) (M : Type u_2) [AddCommGroup M] [Module (MvPolynomial (Fin n) k) M] [Module.Finite (MvPolynomial (Fin n) k) M] :
                  ∃ (r : Fin (n + 1)) (d : (i : ) → (x : i < n) → (Fin (r i + 1, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] Fin (r i, )MvPolynomial (Fin n) k) (ε : (Fin (r 0, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] M), Function.Surjective ε (∀ (hn : 0 < n), ε.ker = (d 0 hn).range) (∀ (i : ) (hi : i < n) (hi' : i + 1 < n), (d i hi).ker = (d (i + 1) hi').range) ∀ (hn : 0 < n), Function.Injective (d (n - 1) )
                  def freeModuleGrading (k : Type u_1) [Field k] (n : ) {m : } (d : ) :
                  Submodule k (Fin mMvPolynomial (Fin n) k)
                  Instances For
                    def twistedFreeModuleGrading (k : Type u_1) [Field k] (n : ) {m : } (degrees : Fin m) (p : ) :
                    Submodule k (Fin mMvPolynomial (Fin n) k)
                    Instances For
                      @[implicit_reducible]
                      noncomputable instance fintypeFinsuppDegreeEq (n d : ) :
                      noncomputable def freeModuleGradingEquiv (k : Type u_1) [Field k] (n m d : ) :
                      Instances For
                        theorem hilbert_series_twisted_free_module_poly (k : Type u_1) [Field k] (n : ) {m : } (degrees : Fin m) :
                        theorem hilbert_syzygy_graded_free_resolution (k : Type u_1) [Field k] (n : ) {M : Type u_2} [AddCommGroup M] [Module (MvPolynomial (Fin n) k) M] [Module k M] [IsScalarTower k (MvPolynomial (Fin n) k) M] [Module.Finite (MvPolynomial (Fin n) k) M] ( : Submodule k M) (hgr : IsGradedSModule (MvPolynomial.homogeneousSubmodule (Fin n) k) ) :
                        ∃ (r : Fin (n + 1)) (shifts : (i : Fin (n + 1)) → Fin (r i)) (d : (i : ) → (hi : i < n) → (Fin (r i + 1, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] Fin (r i, )MvPolynomial (Fin n) k) (ε : (Fin (r 0, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] M), Function.Surjective ε (∀ (hn : 0 < n), ε.ker = (d 0 hn).range) (n = 0ε.ker = ) (∀ (i : ) (hi : i < n) (hi' : i + 1 < n), (d i hi).ker = (d (i + 1) hi').range) (∀ (hn : 0 < n), Function.Injective (d (n - 1) )) (∀ (i : ) (hi : i < n) (p : ), v(twistedFreeModuleGrading k n (shifts i + 1, ) p), (d i hi) v (twistedFreeModuleGrading k n (shifts i, ) p)) ∀ (p : ), v(twistedFreeModuleGrading k n (shifts 0, ) p), ε v p
                        theorem graded_euler_characteristic_telescope (k : Type u_1) [Field k] (n : ) {M : Type u_2} [AddCommGroup M] [Module (MvPolynomial (Fin n) k) M] [Module k M] [IsScalarTower k (MvPolynomial (Fin n) k) M] ( : Submodule k M) (hgr : IsGradedSModule (MvPolynomial.homogeneousSubmodule (Fin n) k) ) (hfindim : ∀ (i : ), FiniteDimensional k ( i)) (r : Fin (n + 1)) (shifts : (i : Fin (n + 1)) → Fin (r i)) (d : (i : ) → (hi : i < n) → (Fin (r i + 1, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] Fin (r i, )MvPolynomial (Fin n) k) (ε : (Fin (r 0, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] M) (hε_surj : Function.Surjective ε) (hε_exact : ∀ (hn : 0 < n), ε.ker = (d 0 hn).range) (hε_zero : n = 0ε.ker = ) (hd_exact : ∀ (i : ) (hi : i < n) (hi' : i + 1 < n), (d i hi).ker = (d (i + 1) hi').range) (hd_inj : ∀ (hn : 0 < n), Function.Injective (d (n - 1) )) (hd_graded : ∀ (i : ) (hi : i < n) (p : ), v(twistedFreeModuleGrading k n (shifts i + 1, ) p), (d i hi) v (twistedFreeModuleGrading k n (shifts i, ) p)) (hε_graded : ∀ (p : ), v(twistedFreeModuleGrading k n (shifts 0, ) p), ε v p) (p : ) :
                        ∃ (b : ), b 0 = (Module.finrank k ( p)) b (n + 1) = 0 ∀ (j : Fin (n + 1)), (Module.finrank k (twistedFreeModuleGrading k n (shifts j) p)) = b j + b (j + 1)
                        theorem alternating_sum_general' (nn : ) (b : ) :
                        j : Fin (nn + 1), (-1) ^ j * (b j + b (j + 1)) = b 0 + (-1) ^ nn * b (nn + 1)
                        theorem alternating_sum_eq' (nn : ) (a : Fin (nn + 1)) (target : ) (b : ) (hb0 : b 0 = target) (hbn : b (nn + 1) = 0) (hab : ∀ (j : Fin (nn + 1)), a j = b j + b (j + 1)) :
                        j : Fin (nn + 1), (-1) ^ j * a j = target
                        theorem resolution_hilbert_alternating_sum (k : Type u_1) [Field k] (n : ) {M : Type u_2} [AddCommGroup M] [Module (MvPolynomial (Fin n) k) M] [Module k M] [IsScalarTower k (MvPolynomial (Fin n) k) M] ( : Submodule k M) (hgr : IsGradedSModule (MvPolynomial.homogeneousSubmodule (Fin n) k) ) (hfindim : ∀ (i : ), FiniteDimensional k ( i)) (r : Fin (n + 1)) (shifts : (i : Fin (n + 1)) → Fin (r i)) (d : (i : ) → (hi : i < n) → (Fin (r i + 1, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] Fin (r i, )MvPolynomial (Fin n) k) (ε : (Fin (r 0, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] M) (hε_surj : Function.Surjective ε) (hε_exact : ∀ (hn : 0 < n), ε.ker = (d 0 hn).range) (hε_zero : n = 0ε.ker = ) (hd_exact : ∀ (i : ) (hi : i < n) (hi' : i + 1 < n), (d i hi).ker = (d (i + 1) hi').range) (hd_inj : ∀ (hn : 0 < n), Function.Injective (d (n - 1) )) (hd_graded : ∀ (i : ) (hi : i < n) (p : ), v(twistedFreeModuleGrading k n (shifts i + 1, ) p), (d i hi) v (twistedFreeModuleGrading k n (shifts i, ) p)) (hε_graded : ∀ (p : ), v(twistedFreeModuleGrading k n (shifts 0, ) p), ε v p) :
                        hilbertSeries = j : Fin (n + 1), (-1) ^ j hilbertSeries (twistedFreeModuleGrading k n (shifts j))
                        theorem free_resolution_euler_char (k : Type u_1) [Field k] (n : ) {M : Type u_2} [AddCommGroup M] [Module (MvPolynomial (Fin n) k) M] [Module k M] [IsScalarTower k (MvPolynomial (Fin n) k) M] [Module.Finite (MvPolynomial (Fin n) k) M] ( : Submodule k M) (hgr : IsGradedSModule (MvPolynomial.homogeneousSubmodule (Fin n) k) ) (hfindim : ∀ (i : ), FiniteDimensional k ( i)) (r : Fin (n + 1)) (shifts : (i : Fin (n + 1)) → Fin (r i)) (d : (i : ) → (hi : i < n) → (Fin (r i + 1, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] Fin (r i, )MvPolynomial (Fin n) k) (ε : (Fin (r 0, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] M) (hε_surj : Function.Surjective ε) (hε_exact : ∀ (hn : 0 < n), ε.ker = (d 0 hn).range) (hε_zero : n = 0ε.ker = ) (hd_exact : ∀ (i : ) (hi : i < n) (hi' : i + 1 < n), (d i hi).ker = (d (i + 1) hi').range) (hd_inj : ∀ (hn : 0 < n), Function.Injective (d (n - 1) )) (hd_graded : ∀ (i : ) (hi : i < n) (p : ), v(twistedFreeModuleGrading k n (shifts i + 1, ) p), (d i hi) v (twistedFreeModuleGrading k n (shifts i, ) p)) (hε_graded : ∀ (p : ), v(twistedFreeModuleGrading k n (shifts 0, ) p), ε v p) :
                        ∃ (p : Polynomial ), (1 - PowerSeries.X) ^ n * hilbertSeries = p
                        theorem hilbert_syzygy_theorem (k : Type u_1) [Field k] (n : ) {M : Type u_2} [AddCommGroup M] [Module (MvPolynomial (Fin n) k) M] [Module k M] [IsScalarTower k (MvPolynomial (Fin n) k) M] [Module.Finite (MvPolynomial (Fin n) k) M] ( : Submodule k M) (hgr : IsGradedSModule (MvPolynomial.homogeneousSubmodule (Fin n) k) ) (hfindim : ∀ (i : ), FiniteDimensional k ( i)) :
                        ∃ (p : Polynomial ), (1 - PowerSeries.X) ^ n * hilbertSeries = p
                        theorem polynomial_ring_dimension_formula (k : Type u_2) [Field k] (n : ) (p : Ideal (MvPolynomial (Fin n) k)) [p.IsPrime] :
                        theorem cor_12_7_dim_irred_component (k : Type u_1) [Field k] (n : ) (_hk : IsAlgClosed k) (m : ) (f : Fin mMvPolynomial (Fin n) k) (_hhom : ∀ (i : Fin m), ∃ (d : ), 0 < d ∀ (s : Fin n →₀ ), MvPolynomial.coeff s (f i) 0(s.sum fun (x : Fin n) (e : ) => e) = d) (p : Ideal (MvPolynomial (Fin n) k)) (hp : p (Ideal.span (Set.range f)).minimalPrimes) :
                        n ringKrullDim (MvPolynomial (Fin n) k p) + m
                        theorem image_castSucc_eq_image {A : Type u_2} {k : } (f : Fin (k + 1)A) (j : Fin k) :
                        f Fin.castSucc '' {i : Fin k | i < j} = f '' {i : Fin (k + 1) | i < j.castSucc}
                        theorem isRegularSequence_init {A : Type u_2} [CommRing A] {k : } {f : Fin (k + 1)A} (hreg : IsRegularSequence f) :
                        def koszulProjL {A : Type u_2} [CommRing A] (b c : ) :
                        (Fin (b + c)A) →ₗ[A] Fin bA
                        Instances For
                          def koszulProjR {A : Type u_2} [CommRing A] (b c : ) :
                          (Fin (b + c)A) →ₗ[A] Fin cA
                          Instances For
                            def koszulReindex {A : Type u_2} [CommRing A] {a b : } (h : a = b) :
                            (Fin aA) →ₗ[A] Fin bA
                            Instances For
                              def koszulSmulLM {A : Type u_2} [CommRing A] (a_val : A) (k : ) :
                              (Fin kA) →ₗ[A] Fin kA
                              Instances For
                                def koszulInjectL {A : Type u_2} [CommRing A] (b c : ) :
                                (Fin bA) →ₗ[A] Fin (b + c)A
                                Instances For
                                  def koszulInjectR {A : Type u_2} [CommRing A] (b c : ) :
                                  (Fin cA) →ₗ[A] Fin (b + c)A
                                  Instances For
                                    noncomputable def koszulDSafe {A : Type u_2} [CommRing A] (n : ) (d' : (i : ) → i < n(Fin (n.choose (i + 1))A) →ₗ[A] Fin (n.choose i)A) (p : ) :
                                    (Fin (n.choose (p + 1))A) →ₗ[A] Fin (n.choose p)A
                                    Instances For
                                      noncomputable def koszulConeDiff0 {A : Type u_2} [CommRing A] (n : ) (hn : 0 < n) (d' : (i : ) → i < n(Fin (n.choose (i + 1))A) →ₗ[A] Fin (n.choose i)A) (a : A) :
                                      (Fin ((n + 1).choose 1)A) →ₗ[A] Fin ((n + 1).choose 0)A
                                      Instances For
                                        noncomputable def koszulConeDiffSucc {A : Type u_2} [CommRing A] (n p' : ) (hp' : p' < n) (d' : (i : ) → i < n(Fin (n.choose (i + 1))A) →ₗ[A] Fin (n.choose i)A) (a : A) :
                                        (Fin ((n + 1).choose (p' + 2))A) →ₗ[A] Fin ((n + 1).choose (p' + 1))A
                                        Instances For
                                          noncomputable def koszulConeDiff {A : Type u_2} [CommRing A] (n : ) (hn : 0 < n) (d' : (i : ) → i < n(Fin (n.choose (i + 1))A) →ₗ[A] Fin (n.choose i)A) (a : A) (p : ) (hp : p < n + 1) :
                                          (Fin ((n + 1).choose (p + 1))A) →ₗ[A] Fin ((n + 1).choose p)A
                                          Instances For
                                            theorem koszulCone_exactness {A : Type u_2} [CommRing A] {n : } (hn : 0 < n) (f : Fin (n + 1)A) (hreg : IsRegularSequence f) (d' : (i : ) → i < n(Fin (n.choose (i + 1))A) →ₗ[A] Fin (n.choose i)A) (ε' : (Fin (n.choose 0)A) →ₗ[A] A Ideal.span (Set.range (f Fin.castSucc))) (hε'_surj : Function.Surjective ε') (hε'_exact : ∀ (hm : 0 < n), ε'.ker = (d' 0 hm).range) (hε'_exact_top : n = 0ε'.ker = ) (hd'_exact : ∀ (i : ) (hi : i < n) (hi' : i + 1 < n), (d' i hi).ker = (d' (i + 1) hi').range) (hd'_inj : 0 < nFunction.Injective (d' (n - 1) )) (a : A) (ha : a = f (Fin.last n)) :
                                            have d := fun (i : ) (hi : i < n + 1) => koszulConeDiff n hn d' a i hi; have h_choose0 := ; have ε := { toFun := fun (v : Fin ((n + 1).choose 0)A) => (Ideal.Quotient.mk (Ideal.span (Set.range f))) (v 0, h_choose0), map_add' := , map_smul' := }; (∀ (hm : 0 < n + 1), ε.ker = (d 0 hm).range) (∀ (i : ) (hi : i < n + 1) (hi' : i + 1 < n + 1), (d i hi).ker = (d (i + 1) hi').range) (0 < n + 1Function.Injective (d (n + 1 - 1) ))
                                            theorem lemma_12_8_koszul_exact {A : Type u_2} [CommRing A] {m : } (f : Fin mA) (hreg : IsRegularSequence f) :
                                            ∃ (d : (i : ) → i < m(Fin (m.choose (i + 1))A) →ₗ[A] Fin (m.choose i)A) (ε : (Fin (m.choose 0)A) →ₗ[A] A Ideal.span (Set.range f)), Function.Surjective ε (∀ (hm : 0 < m), ε.ker = (d 0 hm).range) (m = 0ε.ker = ) (∀ (i : ) (hi : i < m) (hi' : i + 1 < m), (d i hi).ker = (d (i + 1) hi').range) ∀ (hm : 0 < m), Function.Injective (d (m - 1) )
                                            theorem X_nonzerodiv_mod_lower (k : Type u_2) [Field k] (n : ) (j : Fin n) (p : MvPolynomial (Fin n) k) (hp : MvPolynomial.X j * p Ideal.span (MvPolynomial.X '' {i : Fin n | i < j})) :
                                            p Ideal.span (MvPolynomial.X '' {i : Fin n | i < j})
                                            theorem koszul_complex_is_acyclic (k : Type u_2) [Field k] (n : ) :
                                            ∃ (r : Fin (n + 1)) (d : (i : ) → (x : i < n) → (Fin (r i + 1, )MvPolynomial (Fin n) k) →ₗ[MvPolynomial (Fin n) k] Fin (r i, )MvPolynomial (Fin n) k), (∀ (i : ) (hi : i < n) (hi' : i + 1 < n), d i hi ∘ₗ d (i + 1) hi' = 0) (∀ (i : ) (hi : i < n) (hi' : i + 1 < n), (d i hi).ker = (d (i + 1) hi').range) (∀ (hn : 0 < n), Function.Injective (d (n - 1) )) ∀ (p : ) (hp : p n), r p, = n.choose p
                                            theorem eval_zero_of_homogeneous_pos_deg (k : Type u_1) [Field k] (n : ) (f : MvPolynomial (Fin n) k) (d : ) (hd : 0 < d) (hhom : ∀ (m : Fin n →₀ ), MvPolynomial.coeff m f 0(m.sum fun (x : Fin n) (e : ) => e) = d) :
                                            theorem assoc_prime_dim_lower_bound (k : Type u_2) [Field k] (n : ) (_hk : IsAlgClosed k) (f : Fin nMvPolynomial (Fin n) k) (_hhom : ∀ (i : Fin n), ∃ (d : ), 0 < d ∀ (m : Fin n →₀ ), MvPolynomial.coeff m (f i) 0(m.sum fun (x : Fin n) (e : ) => e) = d) (j : Fin n) (p : Ideal (MvPolynomial (Fin n) k)) (hp : p associatedPrimes (MvPolynomial (Fin n) k) (MvPolynomial (Fin n) k Ideal.span (f '' {i : Fin n | i < j}))) :
                                            ↑(n - j) ringKrullDim (MvPolynomial (Fin n) k p)
                                            theorem reverse_catenary_polynomial_ring (k : Type u_2) [Field k] (n : ) (p : Ideal (MvPolynomial (Fin n) k)) [p.IsPrime] :
                                            theorem quotient_dim_bound_from_vanishing (k : Type u_2) [Field k] (n : ) (hk : IsAlgClosed k) (f : Fin nMvPolynomial (Fin n) k) (hhom : ∀ (i : Fin n), ∃ (d : ), 0 < d ∀ (m : Fin n →₀ ), MvPolynomial.coeff m (f i) 0(m.sum fun (x : Fin n) (e : ) => e) = d) (hvanish : ∀ (v : Fin nk), (∀ (i : Fin n), (MvPolynomial.eval v) (f i) = 0)v = 0) (j : Fin n) (p : Ideal (MvPolynomial (Fin n) k)) [p.IsPrime] (hp_contains : ∀ (i : Fin n), i jf i p) :
                                            ringKrullDim (MvPolynomial (Fin n) k p) + ↑(j + 1) n
                                            theorem height_bound_from_dim_bounds (dim : WithBot ℕ∞) (ht : ℕ∞) (n j1 : ) (h_le : dim + ht n) (h_ge : n dim + ht) (h_dim : dim + j1 n) :
                                            j1 ht
                                            theorem height_ge_succ_of_vanishing_contains (k : Type u_2) [Field k] (n : ) (hk : IsAlgClosed k) (f : Fin nMvPolynomial (Fin n) k) (hhom : ∀ (i : Fin n), ∃ (d : ), 0 < d ∀ (m : Fin n →₀ ), MvPolynomial.coeff m (f i) 0(m.sum fun (x : Fin n) (e : ) => e) = d) (hvanish : ∀ (v : Fin nk), (∀ (i : Fin n), (MvPolynomial.eval v) (f i) = 0)v = 0) (j : Fin n) (p : Ideal (MvPolynomial (Fin n) k)) [p.IsPrime] (hp_contains : ∀ (i : Fin n), i jf i p) :
                                            j + 1 p.height
                                            theorem prime_dim_upper_bound_from_vanishing (k : Type u_2) [Field k] (n : ) (hk : IsAlgClosed k) (f : Fin nMvPolynomial (Fin n) k) (hhom : ∀ (i : Fin n), ∃ (d : ), 0 < d ∀ (m : Fin n →₀ ), MvPolynomial.coeff m (f i) 0(m.sum fun (x : Fin n) (e : ) => e) = d) (hvanish : ∀ (v : Fin nk), (∀ (i : Fin n), (MvPolynomial.eval v) (f i) = 0)v = 0) (j : Fin n) (p : Ideal (MvPolynomial (Fin n) k)) [p.IsPrime] (hp_contains : ∀ (i : Fin n), i jf i p) :
                                            ringKrullDim (MvPolynomial (Fin n) k p) + ↑(j + 1) n
                                            theorem fj_not_in_associated_prime (k : Type u_2) [Field k] (n : ) (hk : IsAlgClosed k) (f : Fin nMvPolynomial (Fin n) k) (hhom : ∀ (i : Fin n), ∃ (d : ), 0 < d ∀ (m : Fin n →₀ ), MvPolynomial.coeff m (f i) 0(m.sum fun (x : Fin n) (e : ) => e) = d) (hvanish : ∀ (v : Fin nk), (∀ (i : Fin n), (MvPolynomial.eval v) (f i) = 0)v = 0) (j : Fin n) (p : Ideal (MvPolynomial (Fin n) k)) (hp : p associatedPrimes (MvPolynomial (Fin n) k) (MvPolynomial (Fin n) k Ideal.span (f '' {i : Fin n | i < j}))) :
                                            f jp
                                            theorem prop_12_9_non_zero_divisor_step (k : Type u_1) [Field k] (n : ) (hk : IsAlgClosed k) (f : Fin nMvPolynomial (Fin n) k) (hhom : ∀ (i : Fin n), ∃ (d : ), 0 < d ∀ (m : Fin n →₀ ), MvPolynomial.coeff m (f i) 0(m.sum fun (x : Fin n) (e : ) => e) = d) (hvanish : ∀ (v : Fin nk), (∀ (i : Fin n), (MvPolynomial.eval v) (f i) = 0)v = 0) (j : Fin n) (r : MvPolynomial (Fin n) k Ideal.span (f '' {i : Fin n | i < j})) (hr : r 0) :
                                            (Ideal.Quotient.mk (Ideal.span (f '' {i : Fin n | i < j}))) (f j) r 0
                                            theorem prop_12_9_regular_sequence (k : Type u_1) [Field k] (n : ) (hk : IsAlgClosed k) (f : Fin nMvPolynomial (Fin n) k) (hhom : ∀ (i : Fin n), ∃ (d : ), 0 < d ∀ (m : Fin n →₀ ), MvPolynomial.coeff m (f i) 0(m.sum fun (x : Fin n) (e : ) => e) = d) (hvanish : ∀ (v : Fin nk), (∀ (i : Fin n), (MvPolynomial.eval v) (f i) = 0)v = 0) :
                                            noncomputable def quotientHomogeneousSubmodule (k : Type u_1) [Field k] (n : ) (I : Ideal (MvPolynomial (Fin n) k)) (i : ) :
                                            Instances For
                                              Instances For
                                                Instances For
                                                  @[implicit_reducible]
                                                  noncomputable instance fintypeFinsuppDegreeEq' {n : } (d : ) :
                                                  theorem hilbert_series_quotient_regular_seq (k : Type u_1) [Field k] (n m : ) (s : Fin mMvPolynomial (Fin n) k) (degs : Fin m) (hhom : ∀ (i : Fin m) (c : Fin n →₀ ), MvPolynomial.coeff c (s i) 0(c.sum fun (x : Fin n) (e : ) => e) = degs i) (hreg : IsRegularSequence s) :
                                                  theorem prod_one_sub_mul_invOneSubX_eq_prod_qAnalog {m : } (d : Fin m) :
                                                  (∏ i : Fin m, (1 - PowerSeries.X ^ d i)) * invOneSubX ^ m = i : Fin m, qAnalog (d i)
                                                  theorem free_over_adjoin_of_homogeneous (k : Type u_2) [Field k] (n : ) (f : Fin nMvPolynomial (Fin n) k) (d : Fin n) (hd : ∀ (i : Fin n), 0 < d i) (hhom : ∀ (i : Fin n) (m : Fin n →₀ ), MvPolynomial.coeff m (f i) 0(m.sum fun (x : Fin n) (e : ) => e) = d i) (hfin : Module.Finite (↥(Algebra.adjoin k (Set.range f))) (MvPolynomial (Fin n) k)) :
                                                  theorem rank_eq_prod_of_homogeneous (k : Type u_2) [Field k] (n : ) (f : Fin nMvPolynomial (Fin n) k) (d : Fin n) (hd : ∀ (i : Fin n), 0 < d i) (hhom : ∀ (i : Fin n) (m : Fin n →₀ ), MvPolynomial.coeff m (f i) 0(m.sum fun (x : Fin n) (e : ) => e) = d i) (hfin : Module.Finite (↥(Algebra.adjoin k (Set.range f))) (MvPolynomial (Fin n) k)) :
                                                  theorem filtered_deformation_iso (k : Type u_2) [Field k] (n : ) (f : Fin nMvPolynomial (Fin n) k) (d : Fin n) (hd : ∀ (i : Fin n), 0 < d i) (hhom : ∀ (i : Fin n) (m : Fin n →₀ ), MvPolynomial.coeff m (f i) 0(m.sum fun (x : Fin n) (e : ) => e) = d i) (hfin : Module.Finite (↥(Algebra.adjoin k (Set.range f))) (MvPolynomial (Fin n) k)) :
                                                  theorem prop_12_10_free_module (k : Type u_1) [Field k] (n : ) (f : Fin nMvPolynomial (Fin n) k) (d : Fin n) (hd : ∀ (i : Fin n), 0 < d i) (hhom : ∀ (i : Fin n) (m : Fin n →₀ ), MvPolynomial.coeff m (f i) 0(m.sum fun (x : Fin n) (e : ) => e) = d i) (hfin : Module.Finite (↥(Algebra.adjoin k (Set.range f))) (MvPolynomial (Fin n) k)) :
                                                  theorem prop_12_10_hilbert_series (k : Type u_1) [Field k] (n : ) (hk : IsAlgClosed k) (f : Fin nMvPolynomial (Fin n) k) (d : Fin n) (hd : ∀ (i : Fin n), 0 < d i) (hhom : ∀ (i : Fin n) (m : Fin n →₀ ), MvPolynomial.coeff m (f i) 0(m.sum fun (x : Fin n) (e : ) => e) = d i) (hvanish : ∀ (v : Fin nk), (∀ (i : Fin n), (MvPolynomial.eval v) (f i) = 0)v = 0) (_hfin : Module.Finite (↥(Algebra.adjoin k (Set.range f))) (MvPolynomial (Fin n) k)) :