Category:ApCoCoA-1:Package ZeroDim
From ApCoCoAWiki
This package contains some functions for zero-dimensional scheme related computations.
Predefined alias for this package: Alias ZD := $apcocoa/ZeroDim
In this package, we do computations in a polynomial ring P=K[x[0..n]], where x[0],...,x[n] are indeterminates, K is a field such as the field of rational numbers QQ, or the finite field ZZ/(p) where p is a prime.
List of main functions
[/CanonicalIdeal/]
CanonicalIdeal(PP) computes a homogeneous system of generators of the canonical ideal corresponding to the socle of the order ideal OI. Here OI is the order ideal of the homogeneous vanishing ideal of a set of points in P^n_K which does not intersect Z(x_0). input: PP = list of points as described above. output: list of polynomials
KaehlerDifferentialModule(I,M): computes a homogeneous system of a submodule U of P^{C^M_N} such that \Omega^M(R/K)=P^{C^M_N}/U, where N=n+1, C^M_N=N!/(M!(N-M)!), R:=P/I. input: I = list of a set of generators of a non-zero homogeneous ideal of P, M = the number of form of Kaehler diffenrential module. output: list of lists (tuples).
HilbertKDM(I,M): computes the Hilbert function of the Kaehler differential module of R/K. input: I = list of a set of generators of a non-zero homogeneous ideal of P. M = the number of the form of Kaehler diffenrential module. ouput: the values of the Hilbert function of \Omega^M(R/K).
KaehlerDifferentialModulePP(PP,M): computes a homogeneous system of a submodule U of P^{C^M_N} such that \Omega^M(R/K)=P^{C^M_N}/U. input: PP = list of points in P^n_K M = the number of the form of Kaehler diffenrential module. ouput: list of lists (tuples).
HilbertKDMPP(PP,M): computes the Hilbert function of the Kaehler differential module of R/K. input: PP = list of points in P^n_K M = the number of the form of Kaehler diffenrential module. ouput: the values of the Hilbert function of \Omega^M(R/K).
HilbertKDMPP1(PP): computes the Hilbert function of the Kaehler differential module of n+1 form of R/K. input: PP = list of points in P^n_K ouput: the values of the Hilbert function of \Omega^(n+1)(R/K).
/KaehlerDifferentialModuleRel/
KaehlerDifferentialModuleRel(PP,M): computes a submodule U1 of P^{C^M_N} such that \Omega^M(R/K[x_0])=P^{C^M_N}/U1 input: PP = list of points in P^n_K which does not intersect Z(x_0). M = the number of the form of Kaehler diffenrential module. ouput: list of lists (tuples).
HilbertKDMRel(PP,M): computes the Hilbert function of the Kaehler differential module of R/K[x_0]. input: PP = list of points in P^n_K which does not intersect Z(x_0), M = the number of the form of Kaehler diffenrential module. ouput: the values of the Hilbert function of \Omega^M(R/K[x_0]).
NoetherDifferent(PI): computes a minimal homogeneous system of generators of the Noether different V_N(R/K). input: PI is a homogeneous ideal in the polynomial ring K[x[0...n]]. output: list of polynomials.
NoetherDifferentRel(PP): computes a minimal homogeneous system of generators of the Noether different V_N(R/K[x_0]). input: PP = list of points in P^n_K which does not intersect Z(x_0). output: list of polynomials.
NoetherDifferentRel1(IP): computes a minimal homogeneous system of generators of the Noether different V_N(R/K[x_0]). input: IP = the homogeneous saturated ideal of a 0-dimensional subscheme of P^n_K which does not intersect Z(x_0). output: list of polynomials.
DedekindDifferentRel(PP): computes a minimal homogeneous system of generators of the Dedekind different V_D(R/K[x_0]). input: PP = list of points in P^n_K which does not intersect Z(x_0). output: list of polynomials.
HilbertNDDiff(PP): computes the Hilbert function of the Dedekind different. input: PP = list of points in P^n_K which does not intersect Z(x_0). output: the values of the Hilbert function of V_D(R/K[x_0]).
KaehlerDifferentRel(PP): computes a minimal homogeneous system of generators of the Kaehler different V_K(R/K[x_0]). input: PP = list of points in P^n_K which does not intersect Z(x_0). output: list of polynomials.
/FirstNonZeroKaehlerDifferent/
FirstNonZeroKaehlerDifferent(PP): computes a minimal homogeneous system of generators of the first non-zero Kaehler different V^(1)(R/K). input: PP = list of points in P^n_K which does not intersect Z(x_0). output: list of polynomials.
HilbertKDiff(PP): computes the Hilbert function of the Kaehler different. input: PP = list of points in P^n_K which does not intersect Z(x_0). output: the values of the Hilbert function of V_K(R/K[x_0]).
HilbertFKDiff(PP): computes the Hilbert function of the first non-zero Kaehler different V^(1)(R/K[x_0]). input: PP = list of points in P^n_K which does not intersect Z(x_0). output: the values of the Hilbert function of V^(1)(R/K[x_0]).
Example for Computations
Use R::=QQ[x[0..3]]; PP:=[[1,0,0,0],[1,1,0,0], [1,0,1,0],[1,0,0,1],[1,1,1,0]]; ZD.CanonicalIdeal(PP); Result: [-x[0]^3 + x[0]^2x[1] + x[0]^2x[2] - x[0]x[1]x[2] + 2x[0]^2x[3], x[0]^2 - 2x[0]x[1] - 2x[0]x[2] + 4x[1]x[2] - x[0]x[3]] ZD.KaehlerDifferentialModulePP(PP,1); Result: Module([[0, 0, x[3], x[2]], [0, x[3], 0, x[1]], [x[3], 0, 0, x[0] - 2x[3]], [x[2], 0, x[0] - 2x[2], 0], [x[1], x[0] - 2x[1], 0, 0], [0, 2x[1]x[2] - x[2]^2, x[1]^2 - 2x[1]x[2], 0], [x[2]x[3], 0, 0, 0], [x[1]x[3], 0, 0, 0], [x[0]x[3] - x[3]^2, 0, 0, 0], [x[0]x[2] - x[2]^2, 0, 0, 0], [x[0]x[1] - x[1]^2, 0, 0, 0], [x[1]^2x[2] - x[1]x[2]^2, 0, 0, 0], [0, x[2]x[3], 0, 0], [0, x[1]x[3], 0, 0], [0, x[0]x[3] - x[3]^2, 0, 0], [0, x[0]x[2] - x[2]^2, 0, 0], [0, x[0]x[1] - x[1]^2, 0, 0], [0, x[1]^2x[2] - x[1]x[2]^2, 0, 0], [0, 0, x[2]x[3], 0], [0, 0, x[1]x[3], 0], [0, 0, x[0]x[3] - x[3]^2, 0], [0, 0, x[0]x[2] - x[2]^2, 0], [0, 0, x[0]x[1] - x[1]^2, 0], [0, 0, x[1]^2x[2] - x[1]x[2]^2, 0], [0, 0, 0, x[2]x[3]], [0, 0, 0, x[1]x[3]], [0, 0, 0, x[0]x[3] - x[3]^2], [0, 0, 0, x[0]x[2] - x[2]^2], [0, 0, 0, x[0]x[1] - x[1]^2], [0, 0, 0, x[1]^2x[2] - x[1]x[2]^2]]) ZD.HilbertKDMPP(PP,1); Result: H(0) = 4 H(1) = 11 H(2) = 7 H(t) = 5 for t >= 3 ZD.NoetherDifferentRel(PP); Result: [x[3]^2, x[1]x[2]^2 - 1/2x[2]^3, x[1]^3 - x[2]^3, x[0]^3 - 2x[2]^3] ZD.HilbertNDDiff(PP); Result: H(0)=0 H(1)=0 H(2)=1 H(3)=4 H(t)=5 for t >= 4
This category currently contains no pages or media.