Changeset 24a96f8 in git for factory/facFqFactorize.cc
- Timestamp:
- Nov 24, 2014, 10:40:02 PM (9 years ago)
- Branches:
- (u'spielwiese', '2a584933abf2a2d3082034c7586d38bb6de1a30a')
- Children:
- 9905e9eeb3329e6c42fcc9b2c0972cdf89fa3202
- Parents:
- f4fc9b40c900a9c6dce877b3b60856d2c433e962
- git-author:
- Martin Lee <martinlee84@web.de>2014-11-24 22:40:02+01:00
- git-committer:
- Martin Lee <martinlee84@web.de>2014-11-25 20:39:45+01:00
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
factory/facFqFactorize.cc
rf4fc9b r24a96f8 2621 2621 iter2.getItem() *= power (xx, degree (LC (iter.getItem(),1), xx)); 2622 2622 } 2623 CanonicalForm tmp ;2623 CanonicalForm tmp, quot1, quot2, quot3; 2624 2624 iter2= vars1; 2625 2625 for (iter= leadingCoeffs[lengthAeval-1]; iter.hasItem(); iter++, iter2++) … … 2661 2661 { 2662 2662 tmp= ii.getItem().factor(); 2663 iter2.getItem() /= tmp; 2664 CFListIterator iter3= evaluation; 2665 for (int jj= A.level(); jj > 2; jj--, iter3++) 2666 tmp= tmp (iter3.getItem(), jj); 2667 if (!tmp.inCoeffDomain()) 2663 if (fdivides (tmp, iter2.getItem(), quot1)) 2668 2664 { 2669 int index3= 1; 2670 for (iter3= biFactors; iter3.hasItem(); iter3++, index3++) 2665 CFListIterator iter3= evaluation; 2666 for (int jj= A.level(); jj > 2; jj--, iter3++) 2667 tmp= tmp (iter3.getItem(), jj); 2668 if (!tmp.inCoeffDomain()) 2671 2669 { 2672 if (index3 == index2) 2670 int index3= 1; 2671 for (iter3= biFactors; iter3.hasItem(); iter3++, index3++) 2673 2672 { 2674 iter3.getItem() /= tmp; 2675 iter3.getItem() /= Lc (iter3.getItem()); 2676 break; 2673 if (index3 == index2) 2674 { 2675 if (fdivides (tmp, iter3.getItem(), quot2)) 2676 { 2677 if (fdivides (ii.getItem().factor(), A, quot3)) 2678 { 2679 A = quot3; 2680 iter2.getItem() = quot2; 2681 iter3.getItem() = quot3; 2682 iter3.getItem() /= Lc (iter3.getItem()); 2683 break; 2684 } 2685 } 2686 } 2677 2687 } 2678 2688 } 2679 2689 } 2680 A /= ii.getItem().factor();2681 2690 } 2682 2691 } … … 2699 2708 { 2700 2709 tmp= power (ii.getItem().factor(), ii.getItem().exp()); 2701 iter2.getItem() /= tmp; 2702 A /= tmp; 2703 CFListIterator iter3= evaluation; 2704 for (int jj= A.level(); jj > 2; jj--, iter3++) 2705 tmp= tmp (iter3.getItem(), jj); 2706 if (!tmp.inCoeffDomain()) 2710 if (fdivides (tmp, A, quot1)) 2707 2711 { 2708 int index3= 1; 2709 for (iter3= biFactors; iter3.hasItem(); iter3++, index3++) 2712 if (fdivides (tmp, iter2.getItem())) 2710 2713 { 2711 if (index3 == index2) 2714 CFListIterator iter3= evaluation; 2715 for (int jj= A.level(); jj > 2; jj--, iter3++) 2716 tmp= tmp (iter3.getItem(), jj); 2717 if (!tmp.inCoeffDomain()) 2712 2718 { 2713 iter3.getItem() /= tmp; 2714 iter3.getItem() /= Lc (iter3.getItem()); 2715 break; 2719 int index3= 1; 2720 for (iter3= biFactors; iter3.hasItem(); iter3++, index3++) 2721 { 2722 if (index3 == index2) 2723 { 2724 if (fdivides (tmp, iter3.getItem(), quot3)) 2725 { 2726 A = quot1; 2727 iter2.getItem() = quot2; 2728 iter3.getItem() = quot3; 2729 iter3.getItem() /= Lc (iter3.getItem()); 2730 break; 2731 } 2732 } 2733 } 2716 2734 } 2717 2735 }
Note: See TracChangeset
for help on using the changeset viewer.