Changeset 5335ba in git
- Timestamp:
- Jan 25, 2012, 10:29:16 PM (11 years ago)
- Branches:
- (u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', '0604212ebb110535022efecad887940825b97c3f')
- Children:
- ac3fccaf5d3d10d4756431ed2ec3846d0a5852cc
- Parents:
- e5fc00c615e47e7757b8c95660e3a8ac06ffdef0
- git-author:
- Martin Lee <martinlee84@web.de>2012-01-25 22:29:16+01:00
- git-committer:
- Oleksandr Motsak <motsak@mathematik.uni-kl.de>2012-02-10 14:16:43+01:00
- Location:
- factory
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
factory/facFqBivar.cc
re5fc00c r5335ba 1403 1403 CFArray buf; 1404 1404 CFListIterator j; 1405 CanonicalForm truncF; 1406 Variable y= F.mvar(); 1405 1407 while (l <= liftBound) 1406 1408 { … … 1422 1424 j++; 1423 1425 1426 truncF= mod (F, power (y, l)); 1424 1427 for (int i= 0; i < factors.length() - 1; i++, j++) 1425 1428 { 1426 1429 if (!wasInBounds) 1427 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ[i]);1430 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ[i]); 1428 1431 else 1429 A[i]= logarithmicDerivative (F, j.getItem(), l, oldL, bufQ[i], bufQ[i]); 1432 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL, bufQ[i], 1433 bufQ[i]); 1430 1434 } 1431 1435 … … 1519 1523 Variable y= F.mvar(); 1520 1524 Variable x= Variable (1); 1521 CanonicalForm powX, imBasis ;1525 CanonicalForm powX, imBasis, truncF; 1522 1526 CFMatrix Mat, C; 1523 1527 CFArray buf; … … 1566 1570 j++; 1567 1571 1572 truncF= mod (F, power (y, l)); 1568 1573 for (int i= 0; i < factors.length() - 1; i++, j++) 1569 1574 { 1570 1575 if (!wasInBounds) 1571 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ[i]);1576 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ[i]); 1572 1577 else 1573 A[i]= logarithmicDerivative (F, j.getItem(), l, oldL, bufQ[i], bufQ[i]); 1578 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL, bufQ[i], 1579 bufQ[i]); 1574 1580 } 1575 1581 … … 1683 1689 CFArray buf; 1684 1690 CFMatrix C; 1691 Variable y= F.mvar(); 1692 CanonicalForm truncF; 1685 1693 while (l <= liftBound) 1686 1694 { … … 1702 1710 j++; 1703 1711 1712 truncF= mod (F, power (y,l)); 1704 1713 for (int i= 0; i < factors.length() - 1; i++, j++) 1705 1714 { 1706 1715 if (l == (minBound+1)*2) 1707 1716 { 1708 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ[i]);1717 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ[i]); 1709 1718 } 1710 1719 else 1711 1720 { 1712 A[i]= logarithmicDerivative ( F, j.getItem(), l, oldL, bufQ[i],1721 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL, bufQ[i], 1713 1722 bufQ[i] 1714 1723 ); … … 1797 1806 CFArray buf; 1798 1807 mat_zz_p* NTLC, NTLK; 1808 Variable y= F.mvar(); 1809 CanonicalForm truncF; 1799 1810 while (l <= liftBound) 1800 1811 { … … 1816 1827 j++; 1817 1828 1829 truncF= mod (F, power (y,l)); 1818 1830 for (int i= 0; i < factors.length() - 1; i++, j++) 1819 1831 { 1820 1832 if (l == (minBound+1)*2) 1821 1833 { 1822 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ[i]);1834 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ[i]); 1823 1835 } 1824 1836 else 1825 1837 { 1826 A[i]= logarithmicDerivative ( F, j.getItem(), l, oldL, bufQ[i],1838 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL, bufQ[i], 1827 1839 bufQ[i] 1828 1840 ); … … 1916 1928 CFArray buf; 1917 1929 mat_zz_p* NTLC, NTLK; 1930 Variable y= F.mvar(); 1931 CanonicalForm truncF; 1918 1932 while (l <= precision) 1919 1933 { 1920 1934 j= factors; 1935 truncF= mod (F, power (y,l)); 1921 1936 if (useOldQs) 1922 1937 { 1923 1938 for (int i= 0; i < factors.length(); i++, j++) 1924 A[i]= logarithmicDerivative ( F, j.getItem(), l, oldL2, bufQ[i],1939 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL2, bufQ[i], 1925 1940 bufQ[i] 1926 1941 ); … … 1929 1944 { 1930 1945 for (int i= 0; i < factors.length(); i++, j++) 1931 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ [i]);1946 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ [i]); 1932 1947 } 1933 1948 useOldQs= true; … … 2043 2058 mat_zz_pE* NTLC, NTLK; 2044 2059 CFArray buf; 2060 Variable y= F.mvar(); 2061 CanonicalForm truncF; 2045 2062 while (l <= precision) 2046 2063 { 2047 2064 j= factors; 2065 truncF= mod (F, power (y,l)); 2048 2066 if (useOldQs) 2049 2067 { 2050 2068 for (int i= 0; i < factors.length(); i++, j++) 2051 A[i]= logarithmicDerivative ( F, j.getItem(), l, oldL2, bufQ[i],2069 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL2, bufQ[i], 2052 2070 bufQ[i] 2053 2071 ); … … 2056 2074 { 2057 2075 for (int i= 0; i < factors.length(); i++, j++) 2058 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ [i]);2076 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ [i]); 2059 2077 } 2060 2078 useOldQs= true; … … 2175 2193 CFListIterator j; 2176 2194 Variable y= F.mvar(); 2177 CanonicalForm powX, imBasis ;2195 CanonicalForm powX, imBasis, truncF; 2178 2196 CFMatrix Mat, C; 2179 2197 CFIterator iter; … … 2202 2220 setCharacteristic (getCharacteristic(), degMipo, info.getGFName()); 2203 2221 2222 truncF= mod (F, power (y, l)); 2204 2223 if (useOldQs) 2205 2224 { 2206 2225 for (int i= 0; i < factors.length(); i++, j++) 2207 A[i]= logarithmicDerivative ( F, j.getItem(), l, oldL2, bufQ[i],2226 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL2, bufQ[i], 2208 2227 bufQ[i] 2209 2228 ); … … 2212 2231 { 2213 2232 for (int i= 0; i < factors.length(); i++, j++) 2214 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ [i]);2233 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ [i]); 2215 2234 } 2216 2235 useOldQs= true; … … 2358 2377 bool useOldQs= false; 2359 2378 bool hitBound= false; 2360 Variable y= Variable (2);2361 2379 CFListIterator j; 2362 2380 CFMatrix C; 2363 2381 CFArray buf; 2364 2382 mat_zz_pE* NTLC, NTLK; 2383 Variable y= F.mvar(); 2384 CanonicalForm truncF; 2365 2385 while (l <= precision) 2366 2386 { 2367 2387 j= factors; 2388 truncF= mod (F, power (y, l)); 2368 2389 if (useOldQs) 2369 2390 { 2370 2391 for (int i= 0; i < factors.length(); i++, j++) 2371 A[i]= logarithmicDerivative ( F, j.getItem(), l, oldL, bufQ[i], bufQ[i]);2392 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL, bufQ[i], bufQ[i]); 2372 2393 } 2373 2394 else 2374 2395 { 2375 2396 for (int i= 0; i < factors.length(); i++, j++) 2376 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ [i]);2397 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ [i]); 2377 2398 } 2378 2399 useOldQs= true; … … 2478 2499 mat_zz_p* NTLC, NTLK; 2479 2500 CFArray buf; 2501 Variable y= F.mvar(); 2502 CanonicalForm truncF; 2480 2503 while (l <= precision) 2481 2504 { 2482 2505 j= factors; 2506 truncF= mod (F, power (y, l)); 2483 2507 if (useOldQs) 2484 2508 { 2485 2509 for (int i= 0; i < factors.length(); i++, j++) 2486 A[i]= logarithmicDerivative ( F, j.getItem(), l, oldL2, bufQ[i],2510 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL2, bufQ[i], 2487 2511 bufQ[i] 2488 2512 ); … … 2491 2515 { 2492 2516 for (int i= 0; i < factors.length(); i++, j++) 2493 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ [i]);2517 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ [i]); 2494 2518 } 2495 2519 useOldQs= true; … … 2595 2619 CFArray buf; 2596 2620 mat_zz_p* NTLC, NTLK; 2597 CanonicalForm bufF ;2621 CanonicalForm bufF, truncF; 2598 2622 CFList bufUniFactors; 2623 Variable y= F.mvar(); 2599 2624 while (oldL <= l) 2600 2625 { 2601 2626 j= factors; 2627 truncF= mod (F, power (y, oldL)); 2602 2628 if (useOldQs) 2603 2629 { 2604 2630 for (int i= 0; i < factors.length(); i++, j++) 2605 A[i]= logarithmicDerivative ( F, j.getItem(), oldL, oldL2, bufQ[i],2631 A[i]= logarithmicDerivative (truncF, j.getItem(), oldL, oldL2, bufQ[i], 2606 2632 bufQ[i] 2607 2633 ); … … 2610 2636 { 2611 2637 for (int i= 0; i < factors.length(); i++, j++) 2612 A[i]= logarithmicDerivative ( F, j.getItem(), oldL, bufQ [i]);2638 A[i]= logarithmicDerivative (truncF, j.getItem(), oldL, bufQ [i]); 2613 2639 } 2614 2640 useOldQs= true; … … 2695 2721 CFArray buf; 2696 2722 mat_zz_pE* NTLC, NTLK; 2697 CanonicalForm bufF ;2723 CanonicalForm bufF, truncF; 2698 2724 CFList bufUniFactors; 2725 Variable y= F.mvar(); 2699 2726 while (oldL <= l) 2700 2727 { 2701 2728 j= factors; 2729 truncF= mod (F, power (y, oldL)); 2702 2730 if (useOldQs) 2703 2731 { 2704 2732 for (int i= 0; i < factors.length(); i++, j++) 2705 A[i]= logarithmicDerivative ( F, j.getItem(), oldL, oldL2, bufQ[i],2733 A[i]= logarithmicDerivative (truncF, j.getItem(), oldL, oldL2, bufQ[i], 2706 2734 bufQ[i] 2707 2735 ); … … 2710 2738 { 2711 2739 for (int i= 0; i < factors.length(); i++, j++) 2712 A[i]= logarithmicDerivative ( F, j.getItem(), oldL, bufQ [i]);2740 A[i]= logarithmicDerivative (truncF, j.getItem(), oldL, bufQ [i]); 2713 2741 } 2714 2742 useOldQs= true; … … 2804 2832 Variable y= F.mvar(); 2805 2833 CFListIterator j; 2806 CanonicalForm powX, imBasis, bufF ;2834 CanonicalForm powX, imBasis, bufF, truncF; 2807 2835 CFMatrix Mat, C; 2808 2836 CFIterator iter; … … 2834 2862 setCharacteristic (getCharacteristic(), degMipo, info.getGFName()); 2835 2863 2864 truncF= mod (F, power (y, oldL)); 2836 2865 if (useOldQs) 2837 2866 { 2838 2867 for (int i= 0; i < factors.length(); i++, j++) 2839 A[i]= logarithmicDerivative ( F, j.getItem(), oldL, oldL2, bufQ[i],2868 A[i]= logarithmicDerivative (truncF, j.getItem(), oldL, oldL2, bufQ[i], 2840 2869 bufQ[i]); 2841 2870 } … … 2843 2872 { 2844 2873 for (int i= 0; i < factors.length(); i++, j++) 2845 A[i]= logarithmicDerivative ( F, j.getItem(), oldL, bufQ [i]);2874 A[i]= logarithmicDerivative (truncF, j.getItem(), oldL, bufQ [i]); 2846 2875 } 2847 2876 useOldQs= true; … … 2971 3000 CFArray buf; 2972 3001 mat_zz_p* NTLC, NTLK; 2973 CanonicalForm bufF ;3002 CanonicalForm bufF, truncF; 2974 3003 CFList bufUniFactors; 3004 Variable y= F.mvar(); 2975 3005 while (oldL <= l) 2976 3006 { 2977 3007 j= factors; 3008 truncF= mod (F, power (y, oldL)); 2978 3009 if (useOldQs) 2979 3010 { 2980 3011 for (int i= 0; i < factors.length(); i++, j++) 2981 A[i]= logarithmicDerivative ( F, j.getItem(), oldL, oldL2, bufQ[i],3012 A[i]= logarithmicDerivative (truncF, j.getItem(), oldL, oldL2, bufQ[i], 2982 3013 bufQ[i] 2983 3014 ); … … 2986 3017 { 2987 3018 for (int i= 0; i < factors.length(); i++, j++) 2988 A[i]= logarithmicDerivative ( F, j.getItem(), oldL, bufQ [i]);3019 A[i]= logarithmicDerivative (truncF, j.getItem(), oldL, bufQ [i]); 2989 3020 } 2990 3021 useOldQs= true; … … 3073 3104 CFArray buf; 3074 3105 mat_zz_p* NTLC, NTLK; 3075 CanonicalForm bufF; 3106 CanonicalForm bufF, truncF; 3107 Variable y= F.mvar(); 3076 3108 while (l <= liftBound) 3077 3109 { … … 3081 3113 bufFactors.removeFirst(); 3082 3114 j= bufFactors; 3115 truncF= mod (F, power (y, l)); 3083 3116 if (useOldQs) 3084 3117 { 3085 3118 for (int i= 0; i < bufFactors.length(); i++, j++) 3086 A[i]= logarithmicDerivative (F, j.getItem(), l, oldL, bufQ[i],bufQ[i]); 3119 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL, bufQ[i], 3120 bufQ[i]); 3087 3121 } 3088 3122 else 3089 3123 { 3090 3124 for (int i= 0; i < bufFactors.length(); i++, j++) 3091 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ [i]);3125 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ [i]); 3092 3126 } 3093 3127 for (int i= 0; i < d; i++) … … 3208 3242 CFArray buf; 3209 3243 mat_zz_pE* NTLC, NTLK; 3210 CanonicalForm bufF; 3244 CanonicalForm bufF, truncF; 3245 Variable y= F.mvar(); 3211 3246 while (l <= liftBound) 3212 3247 { … … 3214 3249 henselLiftResume12 (F, bufFactors, oldL, l, Pi, diophant, M); 3215 3250 j= bufFactors; 3251 truncF= mod (F, power (y, l)); 3216 3252 if (useOldQs) 3217 3253 { 3218 3254 for (int i= 0; i < bufFactors.length(); i++, j++) 3219 A[i]= logarithmicDerivative (F, j.getItem(), l, oldL, bufQ[i],bufQ[i]); 3255 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL, bufQ[i], 3256 bufQ[i]); 3220 3257 } 3221 3258 else 3222 3259 { 3223 3260 for (int i= 0; i < bufFactors.length(); i++, j++) 3224 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ [i]);3261 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ [i]); 3225 3262 } 3226 3263 for (int i= 0; i < d; i++) … … 3346 3383 ident (NTLN, factors.length()); 3347 3384 Variable y= F.mvar(); 3348 CanonicalForm powX, imBasis, bufF ;3385 CanonicalForm powX, imBasis, bufF, truncF; 3349 3386 CFMatrix Mat, C; 3350 3387 CFIterator iter; … … 3380 3417 3381 3418 j= bufFactors; 3419 truncF= mod (F, power (y, l)); 3382 3420 if (useOldQs) 3383 3421 { 3384 3422 for (int i= 0; i < bufFactors.length(); i++, j++) 3385 A[i]= logarithmicDerivative (F, j.getItem(), l, oldL, bufQ[i],bufQ[i]); 3423 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL, bufQ[i], 3424 bufQ[i]); 3386 3425 } 3387 3426 else 3388 3427 { 3389 3428 for (int i= 0; i < bufFactors.length(); i++, j++) 3390 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ [i]);3429 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ [i]); 3391 3430 } 3392 3431 for (int i= 0; i < d; i++) … … 3541 3580 CFMatrix C; 3542 3581 mat_zz_p* NTLC, NTLK; 3543 CanonicalForm bufF; 3582 CanonicalForm bufF, truncF; 3583 Variable y= F.mvar(); 3544 3584 while (l <= liftBound) 3545 3585 { … … 3547 3587 henselLiftResume12 (F, bufFactors, oldL, l, Pi, diophant, M); 3548 3588 j= bufFactors; 3589 truncF= mod (F, power (y, l)); 3549 3590 if (useOldQs) 3550 3591 { 3551 3592 for (int i= 0; i < bufFactors.length(); i++, j++) 3552 A[i]= logarithmicDerivative (F, j.getItem(), l, oldL, bufQ[i],bufQ[i]); 3593 A[i]= logarithmicDerivative (truncF, j.getItem(), l, oldL, bufQ[i], 3594 bufQ[i]); 3553 3595 } 3554 3596 else 3555 3597 { 3556 3598 for (int i= 0; i < bufFactors.length(); i++, j++) 3557 A[i]= logarithmicDerivative ( F, j.getItem(), l, bufQ [i]);3599 A[i]= logarithmicDerivative (truncF, j.getItem(), l, bufQ [i]); 3558 3600 } 3559 3601 for (int i= 0; i < d; i++) -
factory/facFqBivarUtil.cc
re5fc00c r5335ba 483 483 CanonicalForm logDeriv; 484 484 485 CanonicalForm bufF= mod (F, xToL);485 CanonicalForm bufF= F; 486 486 CanonicalForm oldF= mulMod2 (G, oldQ, xToL); 487 487 bufF -= oldF; -
factory/facFqBivarUtil.h
re5fc00c r5335ba 191 191 /// Variable (2)^l 192 192 CFArray 193 logarithmicDerivative (const CanonicalForm& F, ///< [in] bivariate poly 193 logarithmicDerivative (const CanonicalForm& F, ///< [in] bivariate poly 194 ///< truncated at Variable(2)^l 194 195 const CanonicalForm& G, ///< [in] a factor of F 195 196 int l, ///< [in] lifting precision
Note: See TracChangeset
for help on using the changeset viewer.