[BACK]Return to restriction.k CVS log [TXT][DIR] Up to [local] / OpenXM / src / k097 / lib / restriction

Annotation of OpenXM/src/k097/lib/restriction/restriction.k, Revision 1.1

1.1     ! takayama    1: /*  $OpenXM$ */
        !             2: load["lib/minimal/minimal-test.k"];;
        !             3: Load_sm1(["Srestall_s.sm1","lib/restriction/Srestall_s.sm1"],"Srestall_s.sm1.loaded");
        !             4:
        !             5: def Srestall(gg,ttxx,tt,k1) {
        !             6:   local cohom, gg, ttxx, tt, k1, cohom0, cohomd,ans;
        !             7:   sm1("gg dehomogenize /gg set");
        !             8:   gg = ToString_array(gg);
        !             9:   sm1(" [(x) ring_of_differential_operators [[(x) 1]] weight_vector 0] define_ring ]");
        !            10:   sm1("[(Homogenize_vec) 1] system_variable");
        !            11:   Println([Tag(gg),Tag(ttxx),Tag(tt)]);
        !            12:   sm1("gg ttxx tt k1 (integer) dc Srestall1  /cohom0 set");
        !            13:   sm1(" cohom0 {deRham.simp} map /cohomd set ");
        !            14:   ans = [cohomd,cohom0];
        !            15:   return(ans);
        !            16: }
        !            17: HelpAdd(["Srestall",
        !            18: [ "Srestall(gg,v,rv,k1) evaluates the dimensions of all restictions of",
        !            19:   "gg along the list of variables rv. Here, v is a list of variables and",
        !            20:   " k1 is the maximal integral root of the b-function of gg.",
        !            21:   "Srestall uses the function Sminimal to get a (-w,w)-minimal free resolution.",
        !            22:   "cf. Bfroots1(ii,vv)"
        !            23: ]]);
        !            24:
        !            25: def DeRham2(f) {
        !            26:   local s;
        !            27:   s = ToString(f);
        !            28:   II = Sannfs(f,"x,y");
        !            29:   Println("Step 1: Annhilating ideal (II)"); Println(II);
        !            30:   sm1(" II 0 get { [(x) (y) (Dx) (Dy) ] laplace0 } map /II set ");
        !            31:   Sweyl("x,y",[["x",-1,"y",-1,"Dx",1,"Dy",1]]);
        !            32:   pp = Map(II,"Spoly");
        !            33:   Res = Sminimal(pp);
        !            34:   Res0 = Res[0];
        !            35:   Println("Step2: (-1,1)-minimal resolution (Res0) "); sm1_pmat(Res0);
        !            36:   R = BfRoots1(Res0[0],"x,y");
        !            37:   Println("Step3: computing the cohomology of the truncated complex.");
        !            38:   Print("Roots and b-function are "); Println(R);
        !            39:   R0 = R[0];
        !            40:   Ans=Srestall(Res0, ["x", "y"], ["x", "y"],R0[Length(R0)-1]);
        !            41:   Print("Answer is "); Println(Ans[0]);
        !            42:   return(Ans);
        !            43: }
        !            44:
        !            45: def DeRham3(f) {
        !            46:   local s;
        !            47:   s = ToString(f);
        !            48:   II = Sannfs(f,"x,y,z");
        !            49:   Print("Step 1: Annhilating ideal (II)"); Println(II);
        !            50:   sm1(" II 0 get { [(x) (y) (z) (Dx) (Dy) (Dz)] laplace0 } map /II set ");
        !            51:   Sweyl("x,y,z",[["x",-1,"y",-1,"z",-1,"Dx",1,"Dy",1,"Dz",1]]);
        !            52:   pp = Map(II,"Spoly");
        !            53:   Res = Sminimal(pp);
        !            54:   Res0 = Res[0];
        !            55:   Print("Step2: (-1,1)-minimal resolution (Res0) "); sm1_pmat(Res0);
        !            56:   R = BfRoots1(Res0[0],"x,y,z");
        !            57:   Println("Step3: computing the cohomology of the truncated complex.");
        !            58:   Print("Roots and b-function are "); Println(R);
        !            59:   R0 = R[0];
        !            60:   Ans=Srestall(Res0, ["x", "y", "z"],  ["x", "y", "z"],R0[Length(R0)-1] );
        !            61:   Print("Answer is ");Println(Ans[0]);
        !            62:   return(Ans);
        !            63: }
        !            64:
        !            65: def DeRham1(f) {
        !            66:   local s;
        !            67:   s = ToString(f);
        !            68:   II = Sannfs(f,"x");
        !            69:   Println("Step 1: Annhilating ideal (II)"); Println(II);
        !            70:   sm1(" II 0 get { [(x) (Dx) ] laplace0 } map /II set ");
        !            71:   Sweyl("x",[["x",-1,"Dx",1]]);
        !            72:   pp = Map(II,"Spoly");
        !            73:   Res = Sminimal(pp);
        !            74:   Res0 = Res[0];
        !            75:   Println("Step2: (-1,1)-minimal resolution (Res0) "); sm1_pmat(Res0);
        !            76:   R = BfRoots1(Res0[0],"x");
        !            77:   Println("Step3: computing the cohomology of the truncated complex.");
        !            78:   Print("Roots and b-function are "); Println(R);
        !            79:   R0 = R[0];
        !            80:   Ans=Srestall(Res0, ["x"], ["x"],R0[Length(R0)-1]);
        !            81:   Print("Answer is "); Println(Ans[0]);
        !            82:   return(Ans);
        !            83: }
        !            84:
        !            85: /*  Demo for non-quasi */
        !            86: def nonquasi(p,q) {
        !            87:   local s,ans,f;
        !            88:   f = x^p+y^q+x*y^(q-1);
        !            89:   Print("f=");Println(f);
        !            90:   s = ToString(f);
        !            91:   sm1(" Onverbose ");
        !            92:   sm1(" s [(s) (x) (y)] genericAnn /ans set ");
        !            93:   sm1(" ans 0 get (ring) dc ring_def ");
        !            94:   sm1("[ ans { [[(s). (-1).]] replace } map ] /II set ");
        !            95:   Println("Step 1: Annhilating ideal (II)"); Println(II);
        !            96:   sm1(" II 0 get { [(x) (y) (Dx) (Dy) ] laplace0 } map /II set ");
        !            97:   Sweyl("x,y",[["x",-1,"y",-1,"Dx",1,"Dy",1]]);
        !            98:   pp = Map(II,"Spoly");
        !            99:   Res = Sminimal(pp);
        !           100:   Res0 = Res[0];
        !           101:   Println("Step2: (-1,1)-minimal resolution (Res0) "); sm1_pmat(Res0);
        !           102:   R = BfRoots1(Res0[0],"x,y");
        !           103:   Println("Step3: computing the cohomology of the truncated complex.");
        !           104:   Print("Roots and b-function are "); Println(R);
        !           105:   R0 = R[0];
        !           106:   Ans=Srestall(Res0, ["x", "y"],  ["x", "y"], R0[Length(R0)-1]);
        !           107:   Print("Answer is "); Println(Ans[0]);
        !           108:   return(Ans);
        !           109: }
        !           110:

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>