changes to work modulo an ideal
This commit is contained in:
parent
05018b7d38
commit
dd2cbef15e
347
.singularhistory
347
.singularhistory
@ -45,184 +45,189 @@ LIB"AeCodPruebas.lib";
|
|||||||
ring r = 0,(x,y),ds;
|
ring r = 0,(x,y),ds;
|
||||||
ideal f = x,y2,y3+x2y;
|
ideal f = x,y2,y3+x2y;
|
||||||
TargetIdeal(f, std(ideal(x,y)));
|
TargetIdeal(f, std(ideal(x,y)));
|
||||||
|
ring r = 0,(x,y),ds;
|
||||||
|
ideal f = x,y2,y3+x2y;
|
||||||
LIB"AeCodPruebas.lib";
|
LIB"AeCodPruebas.lib";
|
||||||
ring r = 0,(x),ds;
|
TargetIdeal(f, std(ideal(x,y)));
|
||||||
ideal f = x2+x4,x3;
|
LIB"AeCodPruebas.lib";
|
||||||
|
TargetIdeal(f, std(ideal(x,y)));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
TargetIdeal(f, std(ideal(x,y)));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
TargetIdeal(f, std(ideal(x,y)));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
TargetIdeal(f, std(ideal(x,y)));
|
||||||
|
TargetIdeal(f, std(maxideal(3)));
|
||||||
|
TargetIdeal(f, std(maxideal(5)));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
basering;
|
||||||
AeNormal(f);
|
AeNormal(f);
|
||||||
AeNormal(f,maxideal(5));
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f);
|
||||||
|
;
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f);
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f);
|
||||||
|
;
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f);
|
||||||
|
ideal f = x+x4,y2,y3+x2y;
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
ideal f = x+x4,y2,y3+x2y;
|
||||||
|
AeNormal(f,maxideal(3));
|
||||||
AeNormal(f,maxideal(4));
|
AeNormal(f,maxideal(4));
|
||||||
AeNormal(f,maxideal(10));
|
AeNormal(f);
|
||||||
AeNormal(f,maxideal(6));
|
LIB"AeCodPruebas.lib";
|
||||||
def Q = MalgrRing(ideal(0),1,f);
|
AeNormal(f);
|
||||||
GF;
|
AeNormal(f,maxideal(1));
|
||||||
|
AeNormal(f,maxideal(2));
|
||||||
|
AeNormal(f,maxideal(3));
|
||||||
|
AeNormal(f,maxideal(4));
|
||||||
|
AeNormal(f,maxideal(7));
|
||||||
|
AeNormal(f,maxideal(4));
|
||||||
|
AeNormal(f,maxideal(5));
|
||||||
|
f;
|
||||||
|
def Q = MalgrRing(ideal(0),2,f);
|
||||||
setring Q;
|
setring Q;
|
||||||
GF;
|
GF;
|
||||||
Gens;
|
Gens;
|
||||||
setring r;
|
setring r;
|
||||||
TargetIdeal(f,std(maxideal(10)));
|
ideal w = x+x4,y2;
|
||||||
int k = 5;
|
kbase(std(w));
|
||||||
matrix jf[2][1] = jacob(f);
|
|
||||||
print(jf);
|
|
||||||
setring Q;
|
setring Q;
|
||||||
def f = imap(r,f);
|
GF;
|
||||||
def jf = imap(r,jf);
|
basering;
|
||||||
ideal J = x10;
|
GF;
|
||||||
setring r;
|
reduce(x2, GF);
|
||||||
def Q = MalgrRing(ideal(0),1,f);
|
MalgrFormPoly(x2);
|
||||||
setring Q;
|
MalgrFormPoly(x2, maxideal(4));
|
||||||
def f = imap(r,f);
|
MalgrFormPoly(x2, maxideal(2));
|
||||||
setring r;
|
MalgrFormPoly(x2, maxideal(5));
|
||||||
quit;
|
MalgrFormPoly(x2, maxideal(6));
|
||||||
quit;
|
GF;
|
||||||
quit;
|
reduce(x2,GF);
|
||||||
c
|
x2;
|
||||||
?
|
X(3) - f[3];
|
||||||
n;
|
X(3) - mappingf[3];
|
||||||
n
|
MalgrFormPoly(x2, maxideal(6));
|
||||||
n
|
|
||||||
n
|
|
||||||
p f
|
|
||||||
?
|
|
||||||
b
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
p s
|
|
||||||
n
|
|
||||||
p k
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
p f
|
|
||||||
n
|
|
||||||
p f
|
|
||||||
n
|
|
||||||
n
|
|
||||||
p f
|
|
||||||
n
|
|
||||||
n
|
|
||||||
p wf
|
|
||||||
n
|
|
||||||
p h
|
|
||||||
n
|
|
||||||
p m
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
p wf
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
p wf;
|
|
||||||
p s
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
p jf
|
|
||||||
p wf
|
|
||||||
p jf
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
p NAef
|
|
||||||
p mk
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
p mk
|
|
||||||
p jf
|
|
||||||
p wf
|
|
||||||
p GOX
|
|
||||||
p G0X
|
|
||||||
p GOX
|
|
||||||
n
|
|
||||||
p GOX
|
|
||||||
p GOY
|
|
||||||
p print(GOY)
|
|
||||||
?
|
|
||||||
p GOY
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
nn
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
p T
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
p T
|
|
||||||
p VAX
|
|
||||||
p R1
|
|
||||||
?
|
|
||||||
p basering
|
|
||||||
p Raux
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
n
|
|
||||||
p T
|
|
||||||
n
|
|
||||||
n
|
|
||||||
ring r = 0,(x),ds;
|
|
||||||
ideal f = x2+x4,x3;
|
|
||||||
def Q = MalgrRing(ideal(0),1,f);
|
|
||||||
LIB"AeCodPruebas.lib";
|
LIB"AeCodPruebas.lib";
|
||||||
def Q = MalgrRing(ideal(0),1,f);
|
MalgrFormPoly(x2, maxideal(6));
|
||||||
ring r = 0,(x,y),(dp,c);
|
LIB"AeCodPruebas.lib";
|
||||||
ring r = 0,(x,y),dp;
|
MalgrFormPoly(x2, maxideal(6));
|
||||||
ring R0 = changeord(list(list("(dp,c)",nvars(basering))));
|
MalgrFormPoly(x2, ideal(x,y)^4);
|
||||||
ring R0 = changeord(list(list("dp,c",nvars(basering))));
|
LIB"AeCodPruebas.lib";
|
||||||
ring R0 = changeord(list("(dp,c)",nvars(basering)));
|
MalgrFormPoly(x2, ideal(x,y)^4);
|
||||||
n
|
print(_);
|
||||||
n
|
MalgrFormPoly(x3, ideal(x,y)^4);
|
||||||
p T
|
MalgrFormPoly(x3, ideal(x,y)^6);
|
||||||
n
|
MalgrFormPoly(x3, ideal(x,y)^7);
|
||||||
p T
|
|
||||||
n
|
|
||||||
p T
|
|
||||||
n
|
|
||||||
p T
|
|
||||||
ring r = 0,(x),ds;
|
|
||||||
LIB"ring.lib";
|
|
||||||
changeordTo(r,"(dp,c)");
|
|
||||||
changeordTo(r,"dp");
|
|
||||||
changeordTo(r,r"dp");
|
|
||||||
ring r = 0,(x),(dp,c);
|
|
||||||
basering
|
|
||||||
;
|
;
|
||||||
|
GF;
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
ring r = 0,(x,y),ds;
|
||||||
|
ideal f = x,y2,y7+x2y;
|
||||||
|
AeNormal(f);
|
||||||
|
ideal f = x,y2,y5+x2y;
|
||||||
|
AeNormal(f);
|
||||||
|
ring r = 0,(t,x,y),ds;
|
||||||
|
ideal f = t,x,y3+t2y,(x+y)^4+t3y;
|
||||||
|
AeNormal(f);
|
||||||
|
ideal f = t,x,y4+t3y,(x+y)^3+t3y;
|
||||||
|
AeNormal(f);
|
||||||
|
ideal f = t,x,y5+t4y,(x+y)^4+t3y;
|
||||||
|
ideal f = t,x,y4+t3y,(x+y)^3+t2y;
|
||||||
|
AeNormal(f);
|
||||||
|
ideal f = t,x,y4+t3y,(x+y)^3+t2y;
|
||||||
|
AeNormal(f);
|
||||||
|
ideal f = t,x,y5+t4y,(x+y)^4+t3y;
|
||||||
|
AeNormal(f);
|
||||||
|
ideal f = t,x,y4+t3y,(x+y)^5+t4y;
|
||||||
|
AeNormal(f);
|
||||||
|
quit;
|
||||||
|
ring r = 0,(x,y),ds;
|
||||||
|
ideal f = x,y2,y3+x2y;
|
||||||
|
AeNormal(f);
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f);
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f);
|
||||||
|
ideal f = x+x4,y2,y3+x2y;
|
||||||
|
AeNormal(f);
|
||||||
|
AeNormal(f,maxideal(4));
|
||||||
|
ideal f = x+x4,y2,y3+x2y;
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(4));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(4));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(4));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(4));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(4));
|
||||||
|
f;
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(4));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(4));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(4));
|
||||||
|
f;
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(4));
|
||||||
|
AeNormal(f,maxideal(6));
|
||||||
|
AeNormal(f,maxideal(10));
|
||||||
|
AeNormal(f,maxideal(20));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(10));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(10));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(10));
|
||||||
|
dimX
|
||||||
|
;
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(10));
|
||||||
|
AeNormal(f,maxideal(10));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(10));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(10));
|
||||||
|
AeNormal(f,maxideal(20));
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
AeNormal(f,maxideal(20));
|
||||||
|
f;
|
||||||
|
ideal g = x,xy+y^6+y^9;
|
||||||
|
AeNormal(g,maxideal(20));
|
||||||
|
AeNormal(g,maxideal(10));
|
||||||
|
AeNormal(g,maxideal(12));
|
||||||
|
AeNormal(f,maxideal(12));
|
||||||
|
AeNormal(f);
|
||||||
|
AeNormal(g);
|
||||||
|
AeNormal(g,maxideal(12));
|
||||||
|
AeNormal(g,maxideal(20));
|
||||||
|
AeNormal(g);
|
||||||
|
AeNormal(g,maxideal(50));
|
||||||
|
ring r = 0,(x,y),ds;
|
||||||
|
ring R = 0,(X,Y),ds;
|
||||||
|
setring r;
|
||||||
|
map Rr = R,x2,y3;
|
||||||
|
ideal J = maxideal(20);
|
||||||
|
setring R;
|
||||||
|
preimage(r,Rr,J);
|
||||||
|
setring r;
|
||||||
|
ideal J = maxideal(50);
|
||||||
|
setring R;
|
||||||
|
ideal J = maxideal(50);
|
||||||
|
preimage(r,Rr,J);
|
||||||
|
setring r;
|
||||||
|
ideal J = maxideal(100);
|
||||||
|
setring R;
|
||||||
|
preimage(r,Rr,J);
|
||||||
|
setring r;
|
||||||
|
map f = R,x2+y3,y5+x7;
|
||||||
|
J = maxideal(20);
|
||||||
|
setring R;
|
||||||
|
preimage(r,f,J);
|
||||||
|
|||||||
@ -123,12 +123,15 @@ proc AeNormal(ideal f, list #)
|
|||||||
int n = nvars(basering);
|
int n = nvars(basering);
|
||||||
int p = ncols(f);
|
int p = ncols(f);
|
||||||
|
|
||||||
|
|
||||||
int s = size(#);
|
int s = size(#);
|
||||||
|
|
||||||
|
/*
|
||||||
if (s > 0)
|
if (s > 0)
|
||||||
{
|
{
|
||||||
int k = TargetIdeal(f,std(#[1]));
|
int k = TargetIdeal(f,std(#[1]));
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
def Raux = MalgrRing(ideal(0),n,ideal(f[1..n]));
|
def Raux = MalgrRing(ideal(0),n,ideal(f[1..n]));
|
||||||
|
|
||||||
@ -141,11 +144,12 @@ proc AeNormal(ideal f, list #)
|
|||||||
execute("def f = imap("+RName+",f)");
|
execute("def f = imap("+RName+",f)");
|
||||||
execute("def jf = imap("+RName+",jf)");
|
execute("def jf = imap("+RName+",jf)");
|
||||||
|
|
||||||
|
|
||||||
if (s > 0)
|
if (s > 0)
|
||||||
{
|
{
|
||||||
execute("def # = imap("+RName+",#)");
|
execute("def # = imap("+RName+",#)");
|
||||||
}
|
}
|
||||||
|
|
||||||
module wf = freemodule(p);
|
module wf = freemodule(p);
|
||||||
int m = ncols(Gens);
|
int m = ncols(Gens);
|
||||||
|
|
||||||
@ -161,10 +165,12 @@ proc AeNormal(ideal f, list #)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
if (s>0)
|
if (s>0)
|
||||||
{
|
{
|
||||||
wf = wf + freemodule(p)*(f^k);
|
wf = wf + freemodule(p)*(f^k);
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
if (size(#)>0)
|
if (size(#)>0)
|
||||||
@ -247,9 +253,11 @@ proc TargetIdeal(ideal f, ideal J)
|
|||||||
|
|
||||||
int done = 0;
|
int done = 0;
|
||||||
int k = 1;
|
int k = 1;
|
||||||
|
|
||||||
ideal auxf = 1;
|
ideal auxf = 1;
|
||||||
|
|
||||||
|
J = std(J);
|
||||||
|
|
||||||
while (done == 0)
|
while (done == 0)
|
||||||
{
|
{
|
||||||
auxf = auxf*f;
|
auxf = auxf*f;
|
||||||
@ -287,14 +295,19 @@ proc GenerateOYModule(matrix GOX, matrix GOY, list #)
|
|||||||
int i;
|
int i;
|
||||||
int j;
|
int j;
|
||||||
|
|
||||||
|
int s = size(#);
|
||||||
|
int k = 0;
|
||||||
|
if (s > 0)
|
||||||
|
{
|
||||||
|
k = TargetIdeal(mappingf, #[1]);
|
||||||
|
}
|
||||||
|
|
||||||
int m = ncols(Gens);
|
int m = ncols(Gens);
|
||||||
|
|
||||||
int ny = ncols(GOY);
|
int ny = ncols(GOY);
|
||||||
int nx = ncols(GOX);
|
int nx = ncols(GOX);
|
||||||
int a = nrows(GOY);
|
int a = nrows(GOY);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
module M = 0; // This will be module with the same generators but over O_n
|
module M = 0; // This will be module with the same generators but over O_n
|
||||||
|
|
||||||
matrix col[a][1] = 0; // Auxiliar variable to store the particular vector to be transformed at each step
|
matrix col[a][1] = 0; // Auxiliar variable to store the particular vector to be transformed at each step
|
||||||
@ -327,6 +340,11 @@ proc GenerateOYModule(matrix GOX, matrix GOY, list #)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (s > 0)
|
||||||
|
{
|
||||||
|
M = M + (X(1..dimX)^k)*freemodule(m*a);
|
||||||
|
}
|
||||||
|
|
||||||
return(M);
|
return(M);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -403,9 +421,12 @@ proc MalgrRing(ideal J, int n, ideal f)
|
|||||||
|
|
||||||
ideal mappingf = f;
|
ideal mappingf = f;
|
||||||
export(mappingf);
|
export(mappingf);
|
||||||
int dimX = n;
|
|
||||||
export(dimX);
|
|
||||||
|
|
||||||
|
int dimX = n;
|
||||||
|
option(noredefine);
|
||||||
|
export(dimX);
|
||||||
|
option(redefine);
|
||||||
|
|
||||||
return(R2);
|
return(R2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -65,4 +65,6 @@ If $f(x)=x + x^3$, there is no solution for (3) with polynomial unit.
|
|||||||
|
|
||||||
- In all rings generated: change ordering to (dp/ds,c/C)
|
- In all rings generated: change ordering to (dp/ds,c/C)
|
||||||
|
|
||||||
- Change the use of the maximal ideal so that it works modulo a power in the target already.
|
- Change the use of the maximal ideal so that it works modulo a power in the target already.
|
||||||
|
|
||||||
|
- Do a baby example of why the implementation of the modulo power in the target is not working (try crosscap or Hiroshi example).
|
||||||
Loading…
Reference in New Issue
Block a user