Changeset ec2602 in git
- Timestamp:
- Nov 24, 2011, 5:20:29 PM (12 years ago)
- Branches:
- (u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
- Children:
- f831299ca8780b0484e5c97ab9ebc7b3a4b85e0a
- Parents:
- d3bf01540e1d6181e4e04912c9334dac07c29b47a43cca5ec664cb599240d68933581729ed0c9d9a
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
.gitignore
ra43cca rec2602 11 11 doc/ 12 12 MOD 13 libsingular-config 13 14 factory/readcf.cc 14 15 factory/ylwrap … … 87 88 omalloc/omExternalConfig.h 88 89 omalloc/omlimits.h 90 omalloc/omConfig.h.in 89 91 doc/NTL 90 92 factory/factory.h -
Singular/extra.cc
ra43cca rec2602 984 984 Werror("Sorry: not yet re-factored: see libpolys/polys/clapsing.cc"); 985 985 return FALSE; 986 #else 987 986 #else 987 if ((h!=NULL) &&(h->Typ()==IDEAL_CMD)) 988 988 { 989 989 res->rtyp=STRING_CMD; … … 993 993 else 994 994 WerrorS("ideal expected"); 995 #endif 995 #endif 996 996 } 997 997 else … … 2409 2409 p_DebugPrint((poly)h->Data(), currRing); 2410 2410 # else 2411 2411 Warn("Sorry: not available for release build!"); 2412 2412 # endif 2413 2413 return FALSE; … … 2420 2420 rDebugPrint((ring)h->Data()); 2421 2421 # else 2422 2422 Warn("Sorry: not available for release build!"); 2423 2423 # endif 2424 2424 return FALSE; … … 3766 3766 extern int fanID; 3767 3767 res->rtyp=fanID; 3768 3768 res->data=(void*)(grfan(I,heuristic,FALSE)); 3769 3769 #endif 3770 3770 return FALSE; … … 3789 3789 else 3790 3790 #endif 3791 if (strcmp(sys_cmd,"denom_list")==0) 3792 { 3793 res->rtyp=LIST_CMD; 3794 extern lists get_denom_list(); 3795 res->data=(lists)get_denom_list(); 3796 return FALSE; 3797 } 3791 if (strcmp(sys_cmd,"denom_list")==0) 3792 { 3793 res->rtyp=LIST_CMD; 3794 extern lists get_denom_list(); 3795 res->data=(lists)get_denom_list(); 3796 return FALSE; 3797 } 3798 else 3798 3799 /*==================== Error =================*/ 3799 3800 Werror( "(extended) system(\"%s\",...) %s", sys_cmd, feNotImplemented ); -
Singular/walk.cc
ra43cca rec2602 31 31 32 32 //#define TIME_TEST // print the used time of each subroutine 33 //#define ENDWALKS //print the size of the last omega-homogenoues Gr öbner basis33 //#define ENDWALKS //print the size of the last omega-homogenoues Grï¿œbner basis 34 34 35 35 /* includes */ … … 1815 1815 int i, nv = currRing->N; 1816 1816 1817 r->cf ->ch = rChar (currRing);1817 r->cf = currRing->cf; 1818 1818 r->N = currRing->N; 1819 1819 int nb = rBlocks(currRing) + 1;//31.10.01 (+1) … … 1886 1886 int i, nv = currRing->N; 1887 1887 1888 r->cf ->ch = rChar (currRing);1888 r->cf = currRing->cf; 1889 1889 r->N = currRing->N; 1890 1890 int nb = rBlocks(currRing) + 1;//31.10.01 (+1) … … 2035 2035 2036 2036 2037 r->cf ->ch = rChar (currRing);2037 r->cf = currRing->cf; 2038 2038 r->N = currRing->N; 2039 2039 int nb = rBlocks(currRing) + 1;//31.10.01 (+1) … … 3272 3272 3273 3273 /* The main procedur Mfwalk calls the recursive Subroutine 3274 rec_fractal_call to compute the wanted Gr öbner basis.3275 At the main procedur we compute the reduced Gr öbner basis w.r.t. a "fast"3274 rec_fractal_call to compute the wanted Grï¿œbner basis. 3275 At the main procedur we compute the reduced Grï¿œbner basis w.r.t. a "fast" 3276 3276 order, e.g. "dp" and a sequence of weight vectors which are row vectors 3277 3277 of a matrix. This matrix defines the given monomial order, e.g. "lp" … … 3561 3561 3562 3562 /* 08.09.02 */ 3563 /******** THE NEW GR ÖBNER WALK ALGORITHM **********/3564 /* Gr öbnerwalk with a recursive "second" alternative GW, REC_GB_Mwalk3563 /******** THE NEW GRï¿œBNER WALK ALGORITHM **********/ 3564 /* Grï¿œbnerwalk with a recursive "second" alternative GW, REC_GB_Mwalk 3565 3565 that only computes the last reduced GB */ 3566 3566 ideal Mwalk(ideal Go, intvec* curr_weight, intvec* target_weight) … … 3620 3620 tim = clock(); 3621 3621 /* 3622 Print("\n// **** Gr öbnerwalk took %d steps and ", nwalk);3622 Print("\n// **** Grï¿œbnerwalk took %d steps and ", nwalk); 3623 3623 PrintS("\n// **** call the rec. Pert. Walk to compute a red GB of:"); 3624 3624 idElements(Gomega, "G_omega"); … … 5130 5130 5131 5131 5132 /* compute the reduced Gr öbner basis of an ideal <Go> w.r.t. lp */5132 /* compute the reduced Grï¿œbner basis of an ideal <Go> w.r.t. lp */ 5133 5133 static ideal Mpwalk_MAltwalk1(ideal Go, intvec* curr_weight, int tp_deg) 5134 5134 { -
factory/cf_factor.cc
rd3bf015 rec2602 31 31 #include "facFactorize.h" 32 32 #include "singext.h" 33 #include "cf_util.h" 33 34 34 35 #include "int_int.h" … … 563 564 #else 564 565 ASSERT( f.isUnivariate(), "multivariate factorization not implemented" ); 566 factoryError ("multivariate factorization not implemented"); 567 return CFFList (CFFactor (f, 1)); 565 568 #endif 566 569 } … … 615 618 //printf("fac.:\n");out_cff(F); 616 619 } 617 else 620 #else 621 { 622 //Use Factory without NTL 623 //F = ZFactorizeUnivariate( fz, issqrfree ); 624 factoryError ("univariate factorization over Z not implemented"); 625 return CFFList (CFFactor (f, 1)); 626 } 618 627 #endif 619 { 620 //Use Factory without NTL 621 F = ZFactorizeUnivariate( fz, issqrfree ); 622 } 623 } 624 else 625 { 628 } 629 else 630 { 631 #ifdef HAVE_NTL 626 632 F = ZFactorizeMultivariate( fz, issqrfree ); 633 #else 634 factoryError ("multivariate factorization not implemented"); 635 return CFFList (CFFactor (f, 1)); 636 #endif 627 637 } 628 638 … … 796 806 #else 797 807 ASSERT( f.isUnivariate(), "multivariate factorization not implemented" ); 808 factoryError ("multivariate factorization not implemented"); 809 return CFFList (CFFactor (f, 1)); 798 810 #endif 799 811 … … 809 821 #else 810 822 ASSERT( f.isUnivariate(), "multivariate factorization not implemented" ); 823 factoryError ("multivariate factorization not implemented"); 824 return CFFList (CFFactor (f, 1)); 811 825 #endif 812 826 } -
kernel/fegetopt.h
ra43cca rec2602 88 88 int val; 89 89 /* Stuff added for Singular */ 90 const char* arg_name;/ / name of argument, for display in help91 const char* help; / / (short) help string92 feOptType type; / / type of argument, if has_arg > 093 void* value; / / (default) value of option94 int set; / / only relevant for strings: 0 if not set, 1 if set90 const char* arg_name;/* name of argument, for display in help */ 91 const char* help; /* (short) help string */ 92 feOptType type; /* type of argument, if has_arg > 0 */ 93 void* value; /* (default) value of option */ 94 int set; /* only relevant for strings: 0 if not set, 1 if set */ 95 95 }; 96 96 -
libpolys/polys/ext_fields/algext.cc
ra43cca rec2602 113 113 if (a == NULL) return TRUE; 114 114 p_Test((poly)a, naRing); 115 assume(p_Totaldegree((poly)a, naRing) <= p_Totaldegree(naMinpoly, naRing)); 115 if(p_Totaldegree((poly)a, naRing) >= p_Totaldegree(naMinpoly, naRing)) 116 { 117 Print("deg >= deg(minpoly) in %s:%d\n",f,l); 118 return FALSE; 119 } 116 120 return TRUE; 117 121 } … … 486 490 poly aAsPoly; 487 491 const char * result = p_Read(s, aAsPoly, naRing); 492 definiteReduce(aAsPoly, naMinpoly, cf); 488 493 *a = (number)aAsPoly; 489 494 return result; -
libpolys/polys/ext_fields/transext.cc
ra43cca rec2602 138 138 assume(NUM(t) != NULL); /**< t != 0 ==> numerator(t) != 0 */ 139 139 p_Test(NUM(t), ntRing); 140 if (!DENIS1(t)) p_Test(DEN(t), ntRing); 140 if (!DENIS1(t)) 141 { 142 p_Test(DEN(t), ntRing); 143 if(p_IsConstant(DEN(t),ntRing) && (n_IsOne(pGetCoeff(DEN(t)),ntRing->cf))) 144 { 145 Print("?/1 in %s:%d\n",f,l); 146 return FALSE; 147 } 148 } 141 149 return TRUE; 142 150 } … … 561 569 fraction result = (fraction)omAlloc0Bin(fractionObjectBin); 562 570 NUM(result) = g; 563 DEN(result) = f; 571 if (!p_IsConstant(f,ntRing) || !n_IsOne(pGetCoeff(f),ntRing->cf)) 572 DEN(result) = f; 564 573 COM(result) = COM(fa) + COM(fb) + MULT_COMPLEXITY; 565 574 heuristicGcdCancellation((number)result, cf);
Note: See TracChangeset
for help on using the changeset viewer.