add first version of finite determinacy calculations
This commit is contained in:
parent
8d435326a9
commit
6c7682073d
782
.singularhistory
782
.singularhistory
@ -126,3 +126,785 @@ ideal f = y+b,x*(y2+yb+b2)+x3,y4+y3b+y2b2+yb3+b4;
|
|||||||
kbase(std(f));
|
kbase(std(f));
|
||||||
quit
|
quit
|
||||||
;
|
;
|
||||||
|
if(0){"a";}
|
||||||
|
if(1){"a";}
|
||||||
|
;
|
||||||
|
quit;
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
ring r = 0,(x,y),ds;
|
||||||
|
AeNormal(ideal(x,y2,xy));
|
||||||
|
AeNormal(ideal(x,y2,y3+x2y));
|
||||||
|
AeNormal(ideal(x,y2,y3+x19y));
|
||||||
|
AeNormal(ideal(x,y2,y3+x15y));
|
||||||
|
AeNormal(ideal(x,y2,y3+x5y));
|
||||||
|
module m;
|
||||||
|
ncols(m);
|
||||||
|
m[1]==0;
|
||||||
|
m[1]!=0;
|
||||||
|
module m = 0,0,0,0;
|
||||||
|
print(m);
|
||||||
|
m = 0*gen(1)+0*gen(2);
|
||||||
|
m;
|
||||||
|
m = 0,gen(2);
|
||||||
|
m;
|
||||||
|
m[1] == 0;
|
||||||
|
print(m);
|
||||||
|
m=0;
|
||||||
|
size(m);
|
||||||
|
quit;
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
ring r = 0,(x,y),ds;
|
||||||
|
ideal f = x,y2,y3+x2y;
|
||||||
|
MaxPowerContained(f);
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
MaxPowerContained(f);
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
MaxPowerContained(f);
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
MaxPowerContained(f);
|
||||||
|
MaxPowerContained(f);
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
MaxPowerContained(f);
|
||||||
|
quit;
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
LIB"AeCodPruebas.lib";
|
||||||
|
quit;
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
nn
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p GOX
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p a
|
||||||
|
p GOY
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
nn
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p a
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p col
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p col
|
||||||
|
n
|
||||||
|
p col
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p col
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
p col
|
||||||
|
p k
|
||||||
|
c
|
||||||
|
?
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
nn
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
nn
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
nn
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
nn
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p col
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p col
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n col
|
||||||
|
p col
|
||||||
|
p mappingf
|
||||||
|
p k
|
||||||
|
p Raux
|
||||||
|
quit;
|
||||||
|
c
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
?
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p col
|
||||||
|
n
|
||||||
|
p v
|
||||||
|
n
|
||||||
|
p v
|
||||||
|
c
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
c
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
c
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
c
|
||||||
|
p M
|
||||||
|
p Gens
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
c
|
||||||
|
p m
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
c
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p col
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p v
|
||||||
|
n
|
||||||
|
c
|
||||||
|
n
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p col
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p v
|
||||||
|
c
|
||||||
|
p M
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
c
|
||||||
|
n
|
||||||
|
p GOX
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p col
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p v
|
||||||
|
n
|
||||||
|
p #
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p determinacyIdeal
|
||||||
|
n GF
|
||||||
|
p GF
|
||||||
|
p K
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p maxibound
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p determinacyIdeal
|
||||||
|
p maxibound
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p maxibound
|
||||||
|
p determinacyIdeal
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p tkef
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p tkef
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p freemax
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p freemax
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p auxtke
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
n
|
||||||
|
p auxtke
|
||||||
|
|||||||
130
AeCodPruebas.lib
130
AeCodPruebas.lib
@ -186,6 +186,121 @@ proc AeNormal(ideal f, list #)
|
|||||||
return(NAef);
|
return(NAef);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
proc MaxPowerContained(ideal f)
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
f: Cn -> Cp is a map-germ with p >= n
|
||||||
|
*/
|
||||||
|
|
||||||
|
int i;
|
||||||
|
|
||||||
|
int n = nvars(basering);
|
||||||
|
int p = ncols(f);
|
||||||
|
|
||||||
|
matrix jf[p][n] = jacob(f);
|
||||||
|
module tkef = module(jf) + f*freemodule(p);
|
||||||
|
tkef = std(tkef);
|
||||||
|
int tkemax = 0;
|
||||||
|
tkefmodk = tkef + maxideal(tkemax + 1)*freemodule(p);
|
||||||
|
tkefmodk = std(tkefmodk);
|
||||||
|
module freemax = freemodule(p);
|
||||||
|
module auxtke = reduce(freemax, tkefmodk);
|
||||||
|
|
||||||
|
while (size(auxtke) != 0)
|
||||||
|
{
|
||||||
|
tkemax++;
|
||||||
|
freemax = maxideal(tkemax)*freemodule(p);
|
||||||
|
tkefmodk = tkef + maxideal(tkemax + 1)*freemodule(p);
|
||||||
|
auxtke = reduce(freemax, tkefmodk);
|
||||||
|
}
|
||||||
|
|
||||||
|
def Raux = MalgrRing(ideal(0),n,ideal(f[1..n]));
|
||||||
|
|
||||||
|
string RName=nameof(basering);
|
||||||
|
|
||||||
|
setring Raux;
|
||||||
|
|
||||||
|
execute("def f = imap("+RName+",f)");
|
||||||
|
execute("def jf = imap("+RName+",jf)");
|
||||||
|
|
||||||
|
|
||||||
|
module wf = freemodule(p);
|
||||||
|
int m = ncols(Gens);
|
||||||
|
|
||||||
|
//print("wf=");wf;//
|
||||||
|
if (p > n)
|
||||||
|
{
|
||||||
|
ideal h = ideal(f[(n+1)..p]);
|
||||||
|
//print("h=");h;//
|
||||||
|
for (i=1; i <= m-1; i++)
|
||||||
|
{
|
||||||
|
wf = wf + (freemodule(p) * (h)^i);
|
||||||
|
//print("wf=");wf;//
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int maxi_contained = 0;
|
||||||
|
int maxi_power_target = 0;
|
||||||
|
module mktheta = freemodule(p);
|
||||||
|
module mk1theta = (mappingf^tkemax)*freemodule(p);
|
||||||
|
//module TAef = GenerateOYModule(jf, wf, #);
|
||||||
|
module TAef;
|
||||||
|
module Tmktheta;
|
||||||
|
module Tmk1theta;
|
||||||
|
module auxmod;
|
||||||
|
|
||||||
|
while (maxi_contained == 0)
|
||||||
|
{
|
||||||
|
maxi_power_target = maxi_power_target + 1;
|
||||||
|
|
||||||
|
mktheta = mappingf*mktheta;
|
||||||
|
mk1theta = mappingf*mk1theta;
|
||||||
|
|
||||||
|
Tmktheta = GenerateOYModule(mktheta, 0, mappingf^(maxi_power_target+1));
|
||||||
|
Tmk1theta = GenerateOYModule(mk1theta, 0, mappingf^(maxi_power_target+1));
|
||||||
|
TAef = GenerateOYModule(jf, wf, mappingf^(maxi_power_target+1));
|
||||||
|
|
||||||
|
|
||||||
|
/*Tmktheta;
|
||||||
|
"---";
|
||||||
|
TAef;
|
||||||
|
"---";
|
||||||
|
Tmk1theta;
|
||||||
|
*/
|
||||||
|
/*
|
||||||
|
mktheta;
|
||||||
|
Tmktheta;
|
||||||
|
maxOX^(maxi_power+1);
|
||||||
|
*/
|
||||||
|
|
||||||
|
auxmod = reduce(Tmktheta, std(Tmk1theta + TAef));
|
||||||
|
|
||||||
|
//reduce(Tmktheta,std(Tmk1theta));
|
||||||
|
//std(TAef);
|
||||||
|
if (size(auxmod)==0)
|
||||||
|
{
|
||||||
|
maxi_contained = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
execute("setring(" + RName + ")");
|
||||||
|
module NAef = imap(Raux, NAef);
|
||||||
|
*/
|
||||||
|
|
||||||
|
int maxi_power = 1;
|
||||||
|
ideal mpfmax = std(mappingf^maxi_power_target);
|
||||||
|
|
||||||
|
while (size(reduce(maxOX^maxi_power, mpfmax))!=0)
|
||||||
|
{
|
||||||
|
maxi_power = maxi_power +1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return(maxi_power);
|
||||||
|
}
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
proc NormalOYModule(matrix GOX, matrix GOY, list #)
|
proc NormalOYModule(matrix GOX, matrix GOY, list #)
|
||||||
@ -327,7 +442,15 @@ proc GenerateOYModule(matrix GOX, matrix GOY, list #)
|
|||||||
|
|
||||||
int ny = ncols(GOY);
|
int ny = ncols(GOY);
|
||||||
int nx = ncols(GOX);
|
int nx = ncols(GOX);
|
||||||
|
|
||||||
|
if (size(module(GOY)) != 0)
|
||||||
|
{
|
||||||
int a = nrows(GOY);
|
int a = nrows(GOY);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
int a = nrows(GOX);
|
||||||
|
}
|
||||||
|
|
||||||
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
|
||||||
|
|
||||||
@ -342,6 +465,8 @@ proc GenerateOYModule(matrix GOX, matrix GOY, list #)
|
|||||||
matrix auxcol;
|
matrix auxcol;
|
||||||
|
|
||||||
for (i=1; i<= ny; i++)
|
for (i=1; i<= ny; i++)
|
||||||
|
{
|
||||||
|
if (GOY[i]!=0)
|
||||||
{
|
{
|
||||||
col = submat(GOY,intvec(1..a),intvec(i)); // Pick the next generator in GOY
|
col = submat(GOY,intvec(1..a),intvec(i)); // Pick the next generator in GOY
|
||||||
if (s>0)
|
if (s>0)
|
||||||
@ -359,6 +484,7 @@ proc GenerateOYModule(matrix GOX, matrix GOY, list #)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Convert GOX to an O_n -module
|
// Convert GOX to an O_n -module
|
||||||
|
|
||||||
@ -369,6 +495,8 @@ proc GenerateOYModule(matrix GOX, matrix GOY, list #)
|
|||||||
|
|
||||||
|
|
||||||
for (i=1; i <= nx; i++)
|
for (i=1; i <= nx; i++)
|
||||||
|
{
|
||||||
|
if (GOX[i]!=0)
|
||||||
{
|
{
|
||||||
col = submat(GOX,intvec(1..a),intvec(i)); // Pick the next generator in GOX
|
col = submat(GOX,intvec(1..a),intvec(i)); // Pick the next generator in GOX
|
||||||
for (j=1; j<= m; j++)
|
for (j=1; j<= m; j++)
|
||||||
@ -383,6 +511,7 @@ proc GenerateOYModule(matrix GOX, matrix GOY, list #)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (s > 0)
|
if (s > 0)
|
||||||
{
|
{
|
||||||
@ -755,6 +884,7 @@ proc MalgrFormVect(matrix v, list #)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
proc MatrixToVector(matrix M)
|
proc MatrixToVector(matrix M)
|
||||||
|
|||||||
43
example.c
43
example.c
@ -1,11 +1,46 @@
|
|||||||
LIB"AeCodPruebas.lib";
|
LIB"AeCodPruebas.lib";
|
||||||
ring r = 0,(x,y,z),ds;
|
ring r = 0,(x,y),ds;
|
||||||
|
int i;
|
||||||
|
|
||||||
ideal f = x,y,yz+z6+z8,z3+xz;
|
ideal f = x, xy+y6+y9;
|
||||||
matrix jf = jacob(f);
|
ideal mappingf = f[1..nvars(r)];
|
||||||
|
//breakpoint(MaxPowerContained);
|
||||||
|
|
||||||
AeNormal(f,maxideal(2));
|
//AeNormal(f,maxideal(3));quit;
|
||||||
|
|
||||||
|
int k = MaxPowerContained(f);
|
||||||
|
int a = 0;
|
||||||
|
ideal aux1 = 0;
|
||||||
|
ideal aux2 = 0;
|
||||||
|
k;
|
||||||
|
while (size(aux1)==0 && size(aux2)==0)
|
||||||
|
{
|
||||||
|
a++;
|
||||||
|
aux1 = reduce(maxideal(k), std(mappingf^a));
|
||||||
|
aux2 = reduce(maxideal(k-1), std(mappingf^a));
|
||||||
|
}
|
||||||
|
|
||||||
|
a;
|
||||||
|
|
||||||
|
if (size(aux1)!=0)
|
||||||
|
{
|
||||||
|
"warning!";
|
||||||
|
}
|
||||||
|
|
||||||
|
AeNormal(f, maxideal(a));
|
||||||
|
|
||||||
|
//breakpoint(GenerateOYModule,464);
|
||||||
|
//breakpoint(MalgrFormVect);
|
||||||
|
/*
|
||||||
|
int k = MaxPowerContained(f);
|
||||||
|
int a = 1;
|
||||||
|
ideal mappingf = f[1..nvars(r)];
|
||||||
|
ideal auxred=reduce(mappingf^k, maxideal(1));
|
||||||
|
|
||||||
|
TargetIdeal(f,maxideal(5));
|
||||||
|
*/
|
||||||
|
|
||||||
|
//AeNormal(f, );
|
||||||
|
|
||||||
/*
|
/*
|
||||||
def Q = MalgrRing(ideal(0),2,ideal(x,y2));
|
def Q = MalgrRing(ideal(0),2,ideal(x,y2));
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user