Changeset a07784 in git for factory/facFqBivar.cc
- Timestamp:
- Dec 5, 2012, 4:03:45 PM (11 years ago)
- Branches:
- (u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
- Children:
- ae900ff750a6fe0dbab70a5aa87cc48fc3dd280e
- Parents:
- b3646035aca6a8d660df952d443268649a51090907ff965ddd552fe3a981f417b2da928dca53a8f2
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
factory/facFqBivar.cc
rb36460 ra07784 412 412 if (recombination) 413 413 { 414 appendTestMapDown (result, buf (y - eval, y), info, source, 414 buf= buf (y-eval,y); 415 buf /= Lc (buf); 416 appendTestMapDown (result, buf, info, source, 415 417 dest); 416 418 F= 1; … … 439 441 if (recombination) 440 442 { 441 appendTestMapDown (result, buf (y - eval, y), info, source, dest); 443 buf= buf (y-eval,y); 444 buf /= Lc (buf); 445 appendTestMapDown (result, buf, info, source, dest); 442 446 F= 1; 443 447 return result; … … 591 595 On (SW_RATIONAL); 592 596 g /= content (g, x); 597 if (!isRat) 598 { 599 On (SW_RATIONAL); 600 g *= bCommonDen (g); 601 Off (SW_RATIONAL); 602 g /= icontent (g); 603 On (SW_RATIONAL); 604 } 593 605 if (fdivides (g, buf, quot)) 594 606 { … … 762 774 On (SW_RATIONAL); 763 775 g /= content (g, x); 776 if (!isRat) 777 { 778 On (SW_RATIONAL); 779 g *= bCommonDen (g); 780 Off (SW_RATIONAL); 781 g /= icontent (g); 782 On (SW_RATIONAL); 783 } 764 784 if (fdivides (g, buf, quot)) 765 785 { … … 1772 1792 buf /= content (buf, x); 1773 1793 buf2= buf (y-evaluation, y); 1794 buf2 /= Lc (buf2); 1774 1795 if (!k && beta == x) 1775 1796 { … … 1852 1873 buf /= content (buf, x); 1853 1874 buf2= buf (y-evaluation, y); 1875 buf2 /= Lc (buf2); 1854 1876 if (!k && beta == x) 1855 1877 { … … 2027 2049 tmp1= tmp1 (y - evaluation, y); 2028 2050 tmp2= tmp2 (y - evaluation, y); 2051 tmp1 /= Lc (tmp1); 2052 tmp2 /= Lc (tmp2); 2029 2053 if (!k && beta == x && degree (tmp2, alpha) < 1 && 2030 2054 degree (tmp1, alpha) < 1) … … 2081 2105 buf /= content (buf, x); 2082 2106 buf2= buf (y - evaluation, y); 2107 buf2 /= Lc (buf2); 2083 2108 if (!k && beta == x) 2084 2109 { … … 2156 2181 tmp1= tmp1 (y - evaluation, y); 2157 2182 tmp2= tmp2 (y - evaluation, y); 2183 tmp1 /= Lc (tmp1); 2184 tmp2 /= Lc (tmp2); 2158 2185 if (!k && beta == x && degree (tmp2, alpha) < 1 && 2159 2186 degree (tmp1, alpha) < 1) … … 2210 2237 buf /= content (buf, x); 2211 2238 buf2= buf (y - evaluation, y); 2239 buf2 /= Lc (buf2); 2212 2240 if (!k && beta == x) 2213 2241 { … … 3556 3584 { 3557 3585 delete [] bounds; 3558 CanonicalForm G= F; 3586 Variable y= Variable (2); 3587 CanonicalForm tmp= F (y - evaluation, y); 3588 CFList source, dest; 3589 tmp= mapDown (tmp, info, source, dest); 3559 3590 F= 1; 3560 return CFList ( G);3591 return CFList (tmp); 3561 3592 } 3562 3593 … … 5663 5694 { 5664 5695 i= 1; 5665 while (( degree (F,y)/4)*i+ 4 <= smallFactorDeg)5696 while (((degree (F,y)/4)*i+1) + 4 <= smallFactorDeg) 5666 5697 i++; 5667 5698 while (i < 5) 5668 5699 { 5669 dummy= tmin (degree (F,y)+1, ( degree (F,y)/4)*i+4);5700 dummy= tmin (degree (F,y)+1, ((degree (F,y)/4)+1)*i+4); 5670 5701 if (l < dummy) 5671 5702 { … … 5822 5853 { 5823 5854 i= 1; 5824 while ((degree (F,y)/4 )*i + 4 <= smallFactorDeg)5855 while ((degree (F,y)/4+1)*i + 4 <= smallFactorDeg) 5825 5856 i++; 5826 5857 while (i < 5) 5827 5858 { 5828 dummy= tmin (degree (F,y)+1, (degree (F,y)/4 )*i+4);5859 dummy= tmin (degree (F,y)+1, (degree (F,y)/4+1)*i+4); 5829 5860 if (l < dummy) 5830 5861 { … … 5970 6001 { 5971 6002 i= 1; 5972 while ((degree (F,y)/4 )*i + 4 <= smallFactorDeg)6003 while ((degree (F,y)/4+1)*i + 4 <= smallFactorDeg) 5973 6004 i++; 5974 6005 while (i < 5) 5975 6006 { 5976 dummy= tmin (degree (F,y)+1, (degree (F,y)/4 )*i+4);6007 dummy= tmin (degree (F,y)+1, (degree (F,y)/4+1)*i+4); 5977 6008 if (l < dummy) 5978 6009 { … … 6443 6474 int factorsFound= 0; 6444 6475 if (alpha.level() == 1 || (alpha.level() != 1 && reduceFq2Fp)) 6445 reconstructionTry (result, bufF, bufUniFactors, degree (F) + 1 + degree6446 #ifdef HAVE_FLINT 6447 (LCF),factorsFound, factorsFoundIndex, FLINTN, false6448 #else 6449 (LCF),factorsFound, factorsFoundIndex, NTLN, false6476 reconstructionTry (result, bufF, bufUniFactors, degree (F) + 1, 6477 #ifdef HAVE_FLINT 6478 factorsFound, factorsFoundIndex, FLINTN, false 6479 #else 6480 factorsFound, factorsFoundIndex, NTLN, false 6450 6481 #endif 6451 6482 ); 6452 6483 else 6453 reconstructionTry (result, bufF, bufUniFactors, degree (F) + 1 + degree6454 (LCF),factorsFound, factorsFoundIndex, NTLNe, false6484 reconstructionTry (result, bufF, bufUniFactors, degree (F) + 1, 6485 factorsFound, factorsFoundIndex, NTLNe, false 6455 6486 ); 6456 6487 if (alpha.level() == 1 || (alpha.level() != 1 && reduceFq2Fp)) … … 6879 6910 { 6880 6911 result= Union (result, smallFactors); 6881 CanonicalForm MODl= power (y, degree (F) + 1 + degree (LC (F, 1)));6912 CanonicalForm MODl= power (y, degree (F) + 1); 6882 6913 delete [] bounds; 6883 6914 return Union (result, factorRecombination (bufUniFactors, F, MODl, degs, 1, … … 7132 7163 return Union (smallFactors, extFactorRecombination 7133 7164 (bufUniFactors, F, 7134 power (y, degree (F) + 1 + degree (LCF)),info,7165 power (y, degree (F) + 1),info, 7135 7166 degs, evaluation, 1, bufUniFactors.length()/2 7136 7167 ) … … 7185 7216 int factorsFound= 0; 7186 7217 7187 extReconstructionTry (result, bufF, bufUniFactors, degree (F) + 1 + degree7188 (LCF),factorsFound, factorsFoundIndex, NTLN, false,7218 extReconstructionTry (result, bufF, bufUniFactors, degree (F) + 1, 7219 factorsFound, factorsFoundIndex, NTLN, false, 7189 7220 info, evaluation 7190 7221 ); … … 7314 7345 if (degs.getLength() == 1 || bufUniFactors.length() == 1) 7315 7346 { 7316 result.append (bufF); 7347 CFList source, dest; 7348 CanonicalForm tmp= bufF (y - evaluation, y); 7349 tmp= mapDown (tmp, info, source, dest); 7350 result.append (tmp); 7317 7351 return result; 7318 7352 } … … 7381 7415 { 7382 7416 result= Union (result, smallFactors); 7383 CanonicalForm MODl= power (y, degree (F) + 1 + degree (LC (F, 1)));7417 CanonicalForm MODl= power (y, degree (F) + 1); 7384 7418 delete [] bounds; 7385 7419 return Union (result, extFactorRecombination (bufUniFactors, F, MODl, info, … … 7671 7705 } 7672 7706 7673 if (i == 0 )7707 if (i == 0 && !extension) 7674 7708 { 7675 7709 if (subCheck1 > 0)
Note: See TracChangeset
for help on using the changeset viewer.