Changeset b6249e in git
- Timestamp:
- Aug 22, 2001, 4:21:17 PM (22 years ago)
- Branches:
- (u'spielwiese', '0d6b7fcd9813a1ca1ed4220cfa2b104b97a0a003')
- Children:
- 72a88c4530caa33c125d6c39f6a6d78f00065e02
- Parents:
- 28ffaa839e0746a838155fb491e13df051251c68
- Location:
- libfac/factor
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
libfac/factor/Factor.cc
r28ffaa rb6249e 1 1 /* Copyright 1996 Michael Messollen. All rights reserved. */ 2 2 /////////////////////////////////////////////////////////////////////////////// 3 static char * rcsid = "$Id: Factor.cc,v 1.1 0 2001-08-08 14:26:55Singular Exp $ ";3 static char * rcsid = "$Id: Factor.cc,v 1.11 2001-08-22 14:21:16 Singular Exp $ "; 4 4 static char * errmsg = "\nYou found a bug!\nPlease inform (Michael Messollen) michael@math.uni-sb.de \nPlease include above information and your input (the ideal/polynomial and characteristic) in your bug-report.\nThank you."; 5 5 /////////////////////////////////////////////////////////////////////////////// … … 726 726 // * ensuring poly is sqrfree (n.y.i.) // 727 727 /////////////////////////////////////////////////////////////// 728 int find_mvar(const CanonicalForm &f); 728 729 CFFList 729 Factorize( 730 Factorize(const CanonicalForm & F, int is_SqrFree ){ 730 731 CFFList Outputlist,SqrFreeList,Intermediatelist,Outputlist2; 731 732 ListIterator<CFFactor> i,j; … … 756 757 } 757 758 TIMING_START(factorize_time); 759 // search an "optimal" main variavble 760 int mv=F.level(); 761 if (! F.isUnivariate() ) 762 { 763 mv=find_mvar(F); 764 if (mv!=F.level()) 765 { 766 swapvar(F,Variable(mv),F.mvar()); 767 } 768 } 769 758 770 /////// 759 771 // Maybe it`s better to add a sqrfree-test before? … … 829 841 Outputlist2.insert(CFFactor(r,1)); 830 842 843 if ((mv!=F.level()) && (! F.isUnivariate() )) 844 { 845 CFFListIterator J=Outputlist2; 846 for ( ; J.hasItem(); J++) 847 { 848 swapvar(J.getItem().factor(),Variable(mv),F.mvar()); 849 } 850 swapvar(F,Variable(mv),F.mvar()); 851 } 852 831 853 DEBDECLEVEL(cout, "Factorize"); 832 854 TIMING_END(factorize_time); … … 843 865 /* 844 866 $Log: not supported by cvs2svn $ 867 Revision 1.10 2001/08/08 14:26:55 Singular 868 *hannes: Dan's HAVE_SINGULAR_ERROR 869 845 870 Revision 1.9 2001/08/08 11:59:12 Singular 846 871 *hannes: Dan's NOSTREAMIO changes -
libfac/factor/MVMultiHensel.cc
r28ffaa rb6249e 2 2 /////////////////////////////////////////////////////////////////////////////// 3 3 // emacs edit mode for this file is -*- C++ -*- 4 // static char * rcsid = "$Id: MVMultiHensel.cc,v 1. 6 2001-08-08 14:26:55Singular Exp $";4 // static char * rcsid = "$Id: MVMultiHensel.cc,v 1.7 2001-08-22 14:21:17 Singular Exp $"; 5 5 /////////////////////////////////////////////////////////////////////////////// 6 6 // FACTORY - Includes … … 112 112 // Degrees ok? degree(F1,mainvar) + degree(F2,mainvar) <= i ? 113 113 if ( (degree(F1,levelU) + degree(F2,levelU) ) <= i ) { 114 #ifdef factor/MVMultiHensel.cc114 #ifdef HAVE_SINGULAR_ERROR 115 115 WerrorS("libfac: diophant ERROR: degree too large! "); 116 116 #else … … 411 411 /* 412 412 $Log: not supported by cvs2svn $ 413 Revision 1.6 2001/08/08 14:26:55 Singular 414 *hannes: Dan's HAVE_SINGULAR_ERROR 415 413 416 Revision 1.5 2001/08/08 11:59:12 Singular 414 417 *hannes: Dan's NOSTREAMIO changes
Note: See TracChangeset
for help on using the changeset viewer.