Difference between revisions of "Category:ApCoCoA-1:Package ZeroDim"

From ApCoCoAWiki
(Created page with " This package contains some functions for zero-dimensional scheme related computations. Predefined alias for this package: <code>Alias ZD := $apcocoa/ZeroDim </code> In this...")
 
Line 6: Line 6:
 
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.  
 
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 ==
+
== List of main functions ==
  
 
<pre>
 
<pre>
    CanonicalIdeal(PP): computes a homogeneous system of generators of the canonical ideal corresponding  
+
[[/CanonicalIdeal(PP)/]] computes a homogeneous system of generators of the canonical ideal corresponding  
 
                         to the socle of the order ideal OI.  
 
                         to the socle of the order ideal OI.  
 
Here OI is the order ideal of the homogeneous vanishing ideal of  
 
Here OI is the order ideal of the homogeneous vanishing ideal of  
Line 72: Line 72:
 
             output: the values of the Hilbert function of V^(1)(R/K[x_0]).
 
             output: the values of the Hilbert function of V^(1)(R/K[x_0]).
 
</pre>
 
</pre>
 
 
  
 
== Example for Computations ==
 
== Example for Computations ==

Revision as of 23:01, 17 November 2022


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(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(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(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.