Changeset 9905e9 in git
- Timestamp:
- Nov 26, 2014, 11:35:13 AM (9 years ago)
- Branches:
- (u'spielwiese', 'e7cc1ebecb61be8b9ca6c18016352af89940b21a')
- Children:
- 4d2a3539c40e545a3b264f0885793cdf5294ba00
- Parents:
- f4fc9b40c900a9c6dce877b3b60856d2c433e96224a96f82dce569832b57f81538dccd6dfab95db3
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
factory/facFqFactorize.cc
rf4fc9b r9905e9 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.