=================================================================== RCS file: /home/cvs/OpenXM/src/k097/lib/minimal/minimal.k,v retrieving revision 1.21 retrieving revision 1.23 diff -u -p -r1.21 -r1.23 --- OpenXM/src/k097/lib/minimal/minimal.k 2000/08/01 03:42:35 1.21 +++ OpenXM/src/k097/lib/minimal/minimal.k 2000/08/01 08:51:03 1.23 @@ -1,4 +1,4 @@ -/* $OpenXM: OpenXM/src/k097/lib/minimal/minimal.k,v 1.20 2000/07/31 02:25:34 takayama Exp $ */ +/* $OpenXM: OpenXM/src/k097/lib/minimal/minimal.k,v 1.22 2000/08/01 06:26:11 takayama Exp $ */ #define DEBUG 1 Sordinary = false; /* If you run this program on openxm version 1.1.2 (FreeBSD), @@ -239,8 +239,11 @@ def SresolutionFrameWithTower(g,opt) { } } } - }else{ + } else if (IsNull(opt)){ + } else { Println("Warning: option should be given by an array."); + Println(opt); + Println("--------------------------------------------"); } } @@ -962,7 +965,7 @@ HelpAdd(["Sminimal", def Sminimal(g,opt) { local r, freeRes, redundantTable, reducer, maxLevel, minRes, seq, maxSeq, level, betti, q, bases, dr, - betti_levelplus, newbases, i, j,qq, tminRes; + betti_levelplus, newbases, i, j,qq, tminRes,bettiTable; if (Length(Arglist) < 2) { opt = null; } @@ -975,6 +978,9 @@ def Sminimal(g,opt) { freeRes = r[0]; redundantTable = r[1]; reducer = r[2]; + bettiTable = SbettiTable(redundantTable); + Println("Betti numbers are ------"); + sm1_pmat(bettiTable); minRes = SnewArrayOfFormat(freeRes); seq = 0; maxSeq = SgetMaxSeq(redundantTable); @@ -1500,3 +1506,17 @@ HelpAdd(["Sinit_w", " c=Sinit_w(b,w); c:" ]]); +/* This method does not work, because we have zero rows. + Think about it later. */ +def SbettiTable(rtable) { + local ans,i,j,pp; + ans = SnewArrayOfFormat(rtable); + for (i=0; i