Difference between revisions of "Package alggeozd"
Line 32: | Line 32: | ||
=== List of main functions === | === List of main functions === | ||
− | [[/ | + | [[/CheckingCBP/]] |
<pre> | <pre> | ||
− | + | CheckingCBP(LX): checks the Cayley-Bacharach Property. | |
− | + | input: LX=list of primary components of a 0-dim ideal Ix | |
− | input: P=K[x[1..N]], | + | output: the corresponding boolean value for CBP |
− | output: | + | </pre> |
+ | [[/CheckingCBPUsingCanModule/]] | ||
+ | <pre> | ||
+ | CheckingCBPUsingCanModule(Ix): checks the CBP | ||
+ | using the canonical module. | ||
+ | input: Ix=a 0-dim ideal in P=K[x[1..N]] | ||
+ | output: the corresponding boolean value for CBP | ||
+ | </pre> | ||
+ | [[/CheckingGor(/]] | ||
+ | <pre> | ||
+ | CheckingGor(Ix): checks the locally Gorenstein property. | ||
+ | input: Ix=a 0-dim ideal in K[x[1..N]] | ||
+ | output: the corresponding boolean value for Gor-property | ||
+ | </pre> | ||
+ | [[/CheckingGorWithValues/]] | ||
+ | <pre> | ||
+ | CheckingGorWithValues(Ix,Values): checks the loc. Gor. property. | ||
+ | input: Ix=a 0-dim ideal in P=K[x[1..N]] | ||
+ | Values=list of numbers with length Dim_K(P/Ix) | ||
+ | output: the corresponding boolean value for Gor-property | ||
+ | </pre> | ||
+ | [[/CheckingStrictGor/]] | ||
+ | <pre> | ||
+ | CheckingStrictGor(Ix): checks the strict/arith. Gor. property. | ||
+ | input: Ix=a 0-dim ideal in P=K[x[1..N]] | ||
+ | term ordering on P is degree-compatible | ||
+ | output: the corresponding boolean value | ||
+ | </pre> | ||
+ | [[/CheckingGorCBP/]] | ||
+ | <pre> | ||
+ | CheckingGorCBP(Ix): checks the CBP with local Gor. | ||
+ | input: Ix=a 0-dim ideal in P=K[x[1..N]] | ||
+ | output: the corresponding boolean value | ||
+ | </pre> | ||
+ | [[/CheckingGorCBPWithValues/]] | ||
+ | <pre> | ||
+ | CheckingGorCBPWithValues(Ix,Values): checks the CBP property | ||
+ | with locally Gorenstein. | ||
+ | input: Ix=a 0-dim ideal in P=K[x[1..N]] | ||
+ | Values=list of numbers with length Delta | ||
+ | output: the corresponding boolean value | ||
+ | </pre> | ||
+ | [[/CheckingSCIS/]] | ||
+ | <pre> | ||
+ | CheckingSCIS(Ix): checks the strict comp. intersection property. | ||
+ | input: Ix=a 0-dim ideal in P=K[x[1..N]] | ||
+ | term ordering on P is degree-compatible | ||
+ | output: the corresponding boolean value | ||
+ | </pre> | ||
+ | [[/CheckingSCIS2/]] | ||
+ | <pre> | ||
+ | CheckingSCIS2(Ix): checks the strict comp. intersection property. | ||
+ | input: Ix=a 0-dim ideal in P=K[x[1..N]] | ||
+ | term ordering on P is degree-compatible (using border) | ||
+ | output: the corresponding boolean value | ||
+ | </pre> | ||
+ | [[/IsUniformity/]] | ||
+ | <pre> | ||
+ | IsUniformity(P,Points,i,j): checks the (i,j)-uniform property. | ||
+ | input: P=K[x[0..N]], Points=Set of projective points, | ||
+ | pair (i,j) of non-negative integres | ||
+ | output: the corresponding boolean value | ||
</pre> | </pre> | ||
− | |||
=== Example for computations === | === Example for computations === |
Revision as of 22:22, 17 November 2022
This page describes the alggeozd
package. The package contains various functions for checking algebraic and geometric properties of zero-dimensional affine K-algebra/schemes and related computations. For a complete list of functions, see Category:Package alggeozd.
Alg-Geo Properties
Let K be a field, let I be a 0-dimensional ideal in a polynomial ring P=K[x_1,...x_n], and let R=P/I and X=Spec(P/I). In this package, we checking some algebraic and geometric properties of the scheme X or of the affine K-algebra R such as: locally Gorenstein, strict/arithmetically Gorenstein, complete intersection, Cayley-Bacharach property, and (i,j)-uniformity.
Algebraic Properties
Suppose the support of X contains s points p_1,...,p_s. For i=1,...s, the local ring of X at p_i is of the form O_i=P/q_i where q_i is a primary ideal of P. Let m_i be the maximal ideal of O_i and K_i=O_i/m_i for i=1,...,s.
- The local ring O_i is called a Gorenstein ring if the K_i-vector space (0:m_i) has dimension 1.
- The scheme X (or the ring R) is called a locally Goreinstein ring if the local ring O_i is a Gorenstein ring for every i=1,...,s.
The associated graded ring of R with respect to the standard grading is denoted by gr(R). Then gr(R) is a 0-dimenisonal local ring.
- The scheme X (or the ring R) is called a strict/arithmetically Goreinstein ring if gr(R) is a Goresntein ring.
- The local ring O_i is called a complete intersection if the ideal q_i is generated by a regular sequence of length n in P.
- The scheme X (or the ring R) is called a locally complete intersection if the local ring O_i is a complete intersection for every i=1,...,s.
- The scheme X (or the ring R) is called a complete intersection if gr(R) is a complete intersection ring.
Geometric Properties
Now we consider X as a projective subscheme of the projective n-space under the embedding X into D_+(x_0). The homogeneous coordinate ring of X is R_X and its homogeneous vanishing ideal in S=K[x_0,...,x_n] is I_X. The Hilbert function of R_X is denoted by HF_X and its regularity index is r_X. The number d_X = dim_K(R) is known as the degree of X. Suppose that X has K-rational support, that is, the maximal ideal of each O_i is generated by only linear forms. Let i,j be two positive integers. Under this assumption, we have the following notion.
- The scheme X is called (i,j)-uniform if every subscheme Y of X of degree d_Y=d_X-1 satisfies HF_Y(j)=HF_X(j).
- The scheme X is said to have the Cayley-Bacharach property if it is (1,r_X-1)-uniform.
The Cayley-Bacharach property of X has a long and rich history and it can be generalized for an arbitrary 0-dimensional scheme X (see e.g. the paper [M. Kreuzer, L.N. Long, L. Robbiano, On the Cayley-Bacharach Property, Communications in Algebra 47 (2019), 328-354]).
Package Discription
The alggeozd
package provides functions for checking the introduced properties of zero-dimensional schemes. Alias of the package is AGZD
.
List of main functions
CheckingCBP(LX): checks the Cayley-Bacharach Property. input: LX=list of primary components of a 0-dim ideal Ix output: the corresponding boolean value for CBP
CheckingCBPUsingCanModule(Ix): checks the CBP using the canonical module. input: Ix=a 0-dim ideal in P=K[x[1..N]] output: the corresponding boolean value for CBP
CheckingGor(Ix): checks the locally Gorenstein property. input: Ix=a 0-dim ideal in K[x[1..N]] output: the corresponding boolean value for Gor-property
CheckingGorWithValues(Ix,Values): checks the loc. Gor. property. input: Ix=a 0-dim ideal in P=K[x[1..N]] Values=list of numbers with length Dim_K(P/Ix) output: the corresponding boolean value for Gor-property
CheckingStrictGor(Ix): checks the strict/arith. Gor. property. input: Ix=a 0-dim ideal in P=K[x[1..N]] term ordering on P is degree-compatible output: the corresponding boolean value
CheckingGorCBP(Ix): checks the CBP with local Gor. input: Ix=a 0-dim ideal in P=K[x[1..N]] output: the corresponding boolean value
CheckingGorCBPWithValues(Ix,Values): checks the CBP property with locally Gorenstein. input: Ix=a 0-dim ideal in P=K[x[1..N]] Values=list of numbers with length Delta output: the corresponding boolean value
CheckingSCIS(Ix): checks the strict comp. intersection property. input: Ix=a 0-dim ideal in P=K[x[1..N]] term ordering on P is degree-compatible output: the corresponding boolean value
CheckingSCIS2(Ix): checks the strict comp. intersection property. input: Ix=a 0-dim ideal in P=K[x[1..N]] term ordering on P is degree-compatible (using border) output: the corresponding boolean value
IsUniformity(P,Points,i,j): checks the (i,j)-uniform property. input: P=K[x[0..N]], Points=Set of projective points, pair (i,j) of non-negative integres output: the corresponding boolean value
Example for computations
Now let us apply the zerodim
package to some concrete examples. Recall that the alias of the package is ZD
, and so to call a function from this package in computation one uses ZD.functions-name.
Consider the first example, where X is the scheme defined by the homogeneous ideal Ix.
Use P ::= QQ[X[0..2]]; Ix := ideal(X[0]*X[1] -X[1]^2, X[1]^2*X[2] -X[1]*X[2]^2, 2*X[0]^2*X[2] -3*X[0]*X[2]^2 +X[2]^3);
Then we calculate the differents of X as follows: