Changeset 7036d0 in git
- Timestamp:
- Jul 3, 2015, 10:56:16 AM (8 years ago)
- Branches:
- (u'spielwiese', '8e0ad00ce244dfd0756200662572aef8402f13d5')
- Children:
- 105eb273abbf2ab214f10f04627af4902c750d87988b95c72fc990b11e9eec2eac106b9b5e6e422c
- Parents:
- f34cd445520f5220554ca71a6324d2a0ecd2c7f6257093d0618eb73fbbcb0854dbb00b31676ad63a
- Files:
-
- 6 added
- 20 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/LIB/nfmodstd.lib
rf34cd44 r7036d0 524 524 I; 525 525 } 526 527 ////////////////////////////////////////////////////////////////////////////// 528 529 /* 530 Benchmark Problems from 531 532 Boku, Decker, Fieker, Steenpass: Groebner Bases over Algebraic Number 533 Fields. 534 535 // 1 536 ring R = (0,a), (x,y,z), dp; 537 minpoly = (a^2+1); 538 poly f1 = (a+8)*x^2*y^2+5*x*y^3+(-a+3)*x^3*z 539 +x^2*y*z; 540 poly f2 = x^5+2*y^3*z^2+13*y^2*z^3+5*y*z^4; 541 poly f3 = 8*x^3+(a+12)*y^3+x*z^2+3; 542 poly f4 = (-a+7)*x^2*y^4+y^3*z^3+18*y^3*z^2; 543 ideal I1 = f1,f2,f3,f4; 544 545 // 2 546 ring R = (0,a), (x,y,z), dp; 547 minpoly = (a^5+a^2+2); 548 poly f1 = 2*x*y^4*z^2+(a-1)*x^2*y^3*z 549 +(2*a)*x*y*z^2+7*y^3+(7*a+1); 550 poly f2 = 2*x^2*y^4*z+(a)*x^2*y*z^2-x*y^2*z^2 551 +(2*a+3)*x^2*y*z-12*x+(12*a)*y; 552 poly f3 = (2*a)*y^5*z+x^2*y^2*z-x*y^3*z 553 +(-a)*x*y^3+y^4+2*y^2*z; 554 poly f4 = (3*a)*x*y^4*z^3+(a+1)*x^2*y^2*z 555 -x*y^3*z+4*y^3*z^2+(3*a)*x*y*z^3 556 +4*z^2-x+(a)*y; 557 ideal I2 = f1,f2,f3,f4; 558 559 // 3a 560 ring R = (0,a), (v,w,x,y,z), dp; 561 minpoly = (a^7-7*a+3); 562 poly f1 = (a)*v+(a-1)*w+x+(a+2)*y+z; 563 poly f2 = v*w+(a-1)*w*x+(a+2)*v*y+x*y+(a)*y*z; 564 poly f3 = (a)*v*w*x+(a+5)*w*x*y+(a)*v*w*z 565 +(a+2)*v*y*z+(a)*x*y*z; 566 poly f4 = (a-11)*v*w*x*y+(a+5)*v*w*x*z 567 +(a)*v*w*y*z+(a)*v*x*y*z 568 +(a)*w*x*y*z; 569 poly f5 = (a+3)*v*w*x*y*z+(a+23); 570 ideal I3a = f1,f2,f3,f4,f5; 571 572 // 3b 573 ring R = (0,a), (u,v,w,x,y,z), dp; 574 minpoly = (a^7-7*a+3); 575 poly f1 = (a)*u+(a+2)*v+w+x+y+z; 576 poly f2 = u*v+v*w+w*x+x*y+(a+3)*u*z+y*z; 577 poly f3 = u*v*w+v*w*x+(a+1)*w*x*y+u*v*z+u*y*z 578 +x*y*z; 579 poly f4 = (a-1)*u*v*w*x+v*w*x*y+u*v*w*z 580 +u*v*y*z+u*x*y*z+w*x*y*z; 581 poly f5 = u*v*w*x*y+(a+1)*u*v*w*x*z+u*v*w*y*z 582 +u*v*x*y*z+u*w*x*y*z+v*w*x*y*z; 583 poly f6 = u*v*w*x*y*z+(-a+2); 584 ideal I3b = f1,f2,f3,f4,f5,f6; 585 586 // 4 587 ring R = (0,a), (w,x,y,z), dp; 588 minpoly = (a^6+a^5+a^4+a^3+a^2+a+1); 589 poly f1 = (a+5)*w^3*x^2*y+(a-3)*w^2*x^3*y 590 +(a+7)*w*x^2*y^2; 591 poly f2 = (a)*w^5+(a+3)*w*x^2*y^2 592 +(a^2+11)*x^2*y^2*z; 593 poly f3 = (a+7)*w^3+12*x^3+4*w*x*y+(a)*z^3; 594 poly f4 = 3*w^3+(a-4)*x^3+x*y^2; 595 ideal I4 = f1,f2,f3,f4; 596 597 // 5 598 ring R = (0,a), (w,x,y,z), dp; 599 minpoly = (a^12-5*a^11+24*a^10-115*a^9+551*a^8 600 -2640*a^7+12649*a^6-2640*a^5+551*a^4 601 -115*a^3+24*a^2-5*a+1); 602 poly f1 = (2*a+3)*w*x^4*y^2+(a+1)*w^2*x^3*y*z 603 +2*w*x*y^2*z^3+(7*a-1)*x^3*z^4; 604 poly f2 = 2*w^2*x^4*y+w^2*x*y^2*z^2 605 +(-a)*w*x^2*y^2*z^2 606 +(a+11)*w^2*x*y*z^3-12*w*z^6 607 +12*x*z^6; 608 poly f3 = 2*x^5*y+w^2*x^2*y*z-w*x^3*y*z 609 -w*x^3*z^2+(a)*x^4*z^2+2*x^2*y*z^3; 610 poly f4 = 3*w*x^4*y^3+w^2*x^2*y*z^3 611 -w*x^3*y*z^3+(a+4)*x^3*y^2*z^3 612 +3*w*x*y^3*z^3+(4*a)*y^2*z^6-w*z^7 613 +x*z^7; 614 ideal I5 = f1,f2,f3,f4; 615 616 // 6 617 ring R = (0,a), (u,v,w,x,y,z), dp; 618 minpoly = (a^2+5*a+1); 619 poly f1 = u+v+w+x+y+z+(a); 620 poly f2 = u*v+v*w+w*x+x*y+y*z+(a)*u+(a)*z; 621 poly f3 = u*v*w+v*w*x+w*x*y+x*y*z+(a)*u*v 622 +(a)*u*z+(a)*y*z; 623 poly f4 = u*v*w*x+v*w*x*y+w*x*y*z+(a)*u*v*w 624 +(a)*u*v*z+(a)*u*y*z+(a)*x*y*z; 625 poly f5 = u*v*w*x*y+v*w*x*y*z+(a)*u*v*w*x 626 +(a)*u*v*w*z+(a)*u*v*y*z+(a)*u*x*y*z 627 +(a)*w*x*y*z; 628 poly f6 = u*v*w*x*y*z+(a)*u*v*w*x*y 629 +(a)*u*v*w*x*z+(a)*u*v*w*y*z 630 +(a)*u*v*x*y*z+(a)*u*w*x*y*z 631 +(a)*v*w*x*y*z; 632 poly f7 = (a)*u*v*w*x*y*z-1; 633 ideal I6 = f1,f2,f3,f4,f5,f6,f7; 634 635 // 7 636 ring R = (0,a), (w,x,y,z), dp; 637 minpoly = (a^8-16*a^7+19*a^6-a^5-5*a^4+13*a^3 638 -9*a^2+13*a+17); 639 poly f1 = (-a^2-1)*x^2*y+2*w*x*z-2*w 640 +(a^2+1)*y; 641 poly f2 = (a^3-a-3)*w^3*y+4*w*x^2*y+4*w^2*x*z 642 +2*x^3*z+(a)*w^2-10*x^2+4*w*y-10*x*z 643 +(2*a^2+a); 644 poly f3 = (a^2+a+11)*x*y*z+w*z^2-w-2*y; 645 poly f4 = -w*y^3+4*x*y^2*z+4*w*y*z^2+2*x*z^3 646 +(2*a^3+a^2)*w*y+4*y^2-10*x*z-10*z^2 647 +(3*a^2+5); 648 ideal I7 = f1,f2,f3,f4; 649 650 // 8 651 ring R = (0,a), (t,u,v,w,x,y,z), dp; 652 minpoly = (a^7+10*a^5+5*a^3+10*a+1); 653 poly f1 = v*x+w*y-x*z-w-y; 654 poly f2 = v*w-u*x+x*y-w*z+v+x+z; 655 poly f3 = t*w-w^2+x^2-t; 656 poly f4 = (-a)*v^2-u*y+y^2-v*z-z^2+u; 657 poly f5 = t*v+v*w+(-a^2-a-5)*x*y-t*z+w*z+v+x+z 658 +(a+1); 659 poly f6 = t*u+u*w+(-a-11)*v*x-t*y+w*y-x*z-t-u 660 +w+y; 661 poly f7 = w^2*y^3-w*x*y^3+x^2*y^3+w^2*y^2*z 662 -w*x*y^2*z+x^2*y^2*z+w^2*y*z^2 663 -w*x*y*z^2+x^2*y*z^2+w^2*z^3-w*x*z^3 664 +x^2*z^3; 665 poly f8 = t^2*u^3+t^2*u^2*v+t^2*u*v^2+t^2*v^3 666 -t*u^3*x-t*u^2*v*x-t*u*v^2*x-t*v^3*x 667 +u^3*x^2+u^2*v*x^2+u*v^2*x^2 668 +v^3*x^2; 669 ideal I8 = f1,f2,f3,f4,f5,f6,f7,f8; 670 */ -
Singular/LIB/poly.lib
r257093d r7036d0 895 895 { 896 896 if (f==0) { return(number(1)); } 897 return(leadcoef(f)/leadcoef(cleardenom(f))); 897 if (attrib(basering,"ring_cf") 898 && ((typeof(f)=="poly")||(typeof(f)=="vector"))) 899 { 900 number c=leadcoef(f); 901 while((c!=1)&&(f!=0)) 902 { 903 c=gcd(c,leadcoef(f)); 904 f=f-lead(f); 905 } 906 return(c); 907 } 908 else 909 { 910 return(leadcoef(f)/leadcoef(cleardenom(f))); 911 } 898 912 } 899 913 example -
Singular/LIB/primdec.lib
r257093d r7036d0 807 807 if((size(sact)==1)&&(m==2)) 808 808 { 809 l[2*i]=l[2*i-1]; 810 attrib(l[2*i],"isSB",1); 809 l[2*i]=std(l[2*i-1],sact[1]); 811 810 } 812 811 if((size(sact)==1)&&(m>2)) -
Singular/LIB/standard.lib
r257093d r7036d0 954 954 955 955 //------------------ classify the possible settings --------------------- 956 string algorithm; //possibilities: std, slimgb, stdorslimgb 956 string algorithm; //possibilities: std, slimgb, stdorslimgb, mathicgb 957 957 string conversion; //possibilities: hilb, fglm, hilborfglm, no 958 958 string partovar; //possibilities: yes, no … … 961 961 962 962 //define algorithm: 963 if( (was_minpoly == 0) && (npars_P == 0) && (was_qring == 0) && (attrib (P,"global") == 1) && (char(P) > 0) && (size(BRlist)<=4) ) 964 { 965 if( defined(Singmathic) ) 966 { 967 algorithm = "mathicgb"; // make it default for any appropriate setting... if mathicgb is available... 968 } else 969 { 970 if( p_opt && find(method,"mathicgb") ) { "Sorry Singmathic::mathicgb is not available!"; } 971 } 972 } 963 973 if( find(method,"std") && !find(method,"slimgb") ) 964 974 { … … 1018 1028 (order=="simple" && (method==",par2var" && npars_P==0 )) || 1019 1029 (conversion=="no" && partovar=="no" && 1020 (algorithm=="std" || algorithm=="slimgb" || 1021 (find(method,"std") && find(method,"slimgb")) ) ) ) 1030 (algorithm=="std" || algorithm=="slimgb" || algorithm=="mathicgb" || 1031 (find(method,"std") && find(method,"slimgb")) 1032 ) 1033 ) 1034 ) 1022 1035 { 1023 1036 direct = "yes"; … … 1040 1053 //BRlist (=ringlist of basering) > 4 if the basering is non-commutative 1041 1054 //---------------------------- direct methods ----------------------------- 1055 if ( algorithm=="mathicgb" ) 1056 { 1057 if (p_opt) { algorithm + " in " + string(P); } 1058 return( mathicgb(i) ); 1059 } 1042 1060 if ( direct == "yes" ) 1043 1061 { -
Singular/maps_ip.cc
r257093d r7036d0 73 73 if (P!=0) 74 74 { 75 // WerrorS("Sorry 'napPermNumber' was lost in the refactoring process (due to Frank): needs to be fixed");76 // return TRUE;77 #if 178 75 // poly n_PermNumber(const number z, const int *par_perm, const int OldPar, const ring src, const ring dst); 79 76 res->data= (void *) n_PermNumber((number)data, par_perm, P, preimage_r, currRing); 80 #endif81 77 res->rtyp=POLY_CMD; 82 if (nCoeff_is_ Extension(currRing->cf))78 if (nCoeff_is_algExt(currRing->cf)) 83 79 res->data=(void *)p_MinPolyNormalize((poly)res->data, currRing); 84 80 pTest((poly) res->data); … … 87 83 { 88 84 assume( nMap != NULL ); 89 90 85 number a = nMap((number)data, preimage_r->cf, currRing->cf); 91 92 93 86 if (nCoeff_is_Extension(currRing->cf)) 94 87 { 95 n_Normalize(a, currRing->cf); // ???88 n_Normalize(a, currRing->cf); 96 89 /* 97 90 number a = (number)res->data; … … 152 145 } 153 146 } 154 else 155 if ( (what==IMAP_CMD) || /*(*/ (what==FETCH_CMD) /*)*/) /* && (nMap!=nCopy)*/ 147 else if ((what==IMAP_CMD) || (what==FETCH_CMD)) 156 148 { 157 149 for (i=R*C-1;i>=0;i--) … … 162 154 } 163 155 } 164 else /* if(what==MAP_CMD) */ 165 { 156 else /* (what==MAP_CMD) */ 157 { 158 assume(what==MAP_CMD); 166 159 matrix s=mpNew(N,maMaxDeg_Ma((ideal)data,preimage_r)); 167 160 for (i=R*C-1;i>=0;i--) … … 172 165 idDelete((ideal *)&s); 173 166 } 174 if (nCoeff_is_ Extension(currRing->cf))167 if (nCoeff_is_algExt(currRing->cf)) 175 168 { 176 169 for (i=R*C-1;i>=0;i--) … … 270 263 n_Delete(&d, currRing); d = NULL; 271 264 } 272 265 else if (!p_IsConstant((poly)NUM((fraction)d), R)) 273 266 { 274 267 WarnS("ignoring denominators of coefficients..."); -
Tst/Manual/Groebner_basis_conversion.res.gz.uu
r257093d r7036d0 1 begin 64 0Groebner_basis_conversion.res.gz2 M'XL(" !]^N4X``T=R;V5B;F5R7V)A<VES7V-O;G9E<G-I;VXN<F5S`,U82X_;1 begin 644 Groebner_basis_conversion.res.gz 2 M'XL("",'>U4``T=R;V5B;F5R7V)A<VES7V-O;G9E<G-I;VXN<F5S`,U82X_; 3 3 M-A"^^U<000\2;"D:/J5=[*)("P0!BE[26U`$MJ5=*_!:AJE-VOSZSHR>EF6W 4 4 M*'KH+#Q+SHM#4O.1TL???O[PJQ`"'L4O']Z)-[6OXWVY>7,OL/6Y/)1U$-XO -
Tst/Manual/Groebner_basis_conversion.stat
r257093d r7036d0 1 1 >> tst_memory_0 :: 1 320779239:3133- exportiert :3-1-3:x86_64-Linux:wawa:4965522 1 >> tst_memory_1 :: 1 320779239:3133- exportiert :3-1-3:x86_64-Linux:wawa:30310403 1 >> tst_memory_2 :: 1 320779239:3133- exportiert :3-1-3:x86_64-Linux:wawa:35731044 1 >> tst_timer_1 :: 1 320779239:3133- exportiert :3-1-3:x86_64-Linux:wawa:81 1 >> tst_memory_0 :: 1434126079:4020, 64 bit:4.0.2:x86_64-Linux:dilbert:538712 2 1 >> tst_memory_1 :: 1434126079:4020, 64 bit:4.0.2:x86_64-Linux:dilbert:4329472 3 1 >> tst_memory_2 :: 1434126079:4020, 64 bit:4.0.2:x86_64-Linux:dilbert:4347232 4 1 >> tst_timer_1 :: 1434126079:4020, 64 bit:4.0.2:x86_64-Linux:dilbert:1657 -
Tst/Manual/groebner_and_std.res.gz.uu
r257093d r7036d0 1 begin 64 0groebner_and_std.res.gz2 M'XL(" /E]N4X``V=R;V5B;F5R7V%N9%]S=&0N<F5S`*U82V_;1A"^ZU<LC!Y(1 begin 644 groebner_and_std.res.gz 2 M'XL("!('>U4``V=R;V5B;F5R7V%N9%]S=&0N<F5S`*U82V_;1A"^ZU<LC!Y( 3 3 M0'0X^R"7,2P432\&BE[26U`$ML381&5)T-(-DE_?^6;YE*7$AS+(:KGSV-G9 4 4 MF6_&_/C7[W=_*J5HI?ZX^TU=M:&]WC8/5S>*9Y^;7=,FZ<T"OVJU4H_'??VP -
Tst/Manual/groebner_and_std.stat
r257093d r7036d0 1 1 >> tst_memory_0 :: 1 320779200:3133- exportiert :3-1-3:x86_64-Linux:wawa:5242642 1 >> tst_memory_1 :: 1 320779200:3133- exportiert :3-1-3:x86_64-Linux:wawa:14295043 1 >> tst_memory_2 :: 1 320779200:3133- exportiert :3-1-3:x86_64-Linux:wawa:14622724 1 >> tst_timer_1 :: 1 320779200:3133- exportiert :3-1-3:x86_64-Linux:wawa:141 1 >> tst_memory_0 :: 1434126079:4020, 64 bit:4.0.2:x86_64-Linux:dilbert:821112 2 1 >> tst_memory_1 :: 1434126079:4020, 64 bit:4.0.2:x86_64-Linux:dilbert:2236416 3 1 >> tst_memory_2 :: 1434126079:4020, 64 bit:4.0.2:x86_64-Linux:dilbert:2249896 4 1 >> tst_timer_1 :: 1434126079:4020, 64 bit:4.0.2:x86_64-Linux:dilbert:1895 -
Tst/Short/cyc5_lp.res.gz.uu
r257093d r7036d0 1 begin 64 0cyc5_lp.res.gz2 M'XL(" $NL;$D``V-Y8S5?;'`N<F5S`.U82V_C-A"^ZU<0BQXDR-)J^)*4((MB3 M 6V"QP**7]+8H"MM28BV<R#"=;KN_OC.CIR7%+8JBZ,$,/"#GQ2%'\Y',_<\_4 M ?OQ)"`'OD!RKYT=Q%'=*)HE:^>O59K5=%:LR6.T/M]Y]JRI)M2K*]5Y4=^MP5 M $V[#8B76FW"S#;=%N"[#HJ3Q%ADXW)3ANBA14JYZ%RH60R--_*':!O76J$B&6 M C8NBC&"86=/,]>%4U<_^X5B?@D%DAJ"^P)T[%0^/^R>_"FZ%AP-1/0N?5Q6<7 M +<LO#KX)5C\$WF>K;N0OX.O`25\%3ODR<-I1USCBHI[S;6`CY_P4NSG^`((H8 M )08H&I$&I$$4N2C*(NQ;8F1(9$*$E*0-(NY&3<NC5A$2'\BGE$0,R[&CR1U`9 M U#4'DN9PK3*T?MPYTX'BZ3B4QE$2]#XBT&0@>PZ8B-:&'5R>3W-#BFS/O[_I10 M 9Y@T#_>_>-F>Q/98G<HC9N0&DEQL=VO<ZH&GI/1B:B&1J/E%830>1=P)0^PP11 M Z67-B&G78M8?*W'K5<XL0FQ$IK$3P_NMJ)[NA#9->'^WS9U=:O\3Y;Y(+!6)12 M J[Z5_A?`RA#B[5L>"O^YCD7](`[U_@\74+5LZZ?#RZDLQ(?WGND=I*,JDU1E13 M NVJ_H2KS6GU!C/)X$@[S7SKQM3KM1%N`C"[S*EQ]W]2AY3K\6E:/NY,3+P[G14 M ?JB/$X<W`E;]G_=9P0W,B]89&K1%&SE+W_:_4;3Y4+1<HDBR(.HEKI5"TA4N15 M -ZY*8L.T2CMQ%C1*5-M4O&>3IGV%#Z!!WE3$P8_2S%7-56RZ*K;18J5FV:Q016 M K4D8*#EAM.?+D,G)VC-H8LJ@@<XN"T!IT`GE0>6,GCB(,!LD\37E0^/NXD:Y17 M '29%TS88$AE.%6VHH=TWM/N&-LWMFI;Z1O4J:2/%M0+MD"7`M&224L)2<ICJ18 M D7'?LL:S)0UK>BOVDI*7=-C/F3&VO(U6G07:N--]FKKQU`,"_&@1;"E;3=^F19 M 3?ADGPZ8WL6'1"TM"*!U1`NWY-Q26)8VIUF0;CY,['$)Y.VQDF;!A76R:SE.20 M 3=J'/,PT;!#B>Q/E9<^"\YK^;1ODZ._\,QND=;<]E/X-#[2NR4Q2/HGCH21 M 4_0U[88V%]R`Z<N."QH-R48MVX!M,8++E6*4\Q@A;>'E3/-,(_M+C=P'';3`22 M 08@T%LJ$T,P-&H,$7I7(L<2.)<H'2B7AXL#4#)S0SRS-E&&GC'3*R*:,?,)023 M 20?/[1C\/K+/D$BZFRF&>!(JIIJI86J9IDPSICE1G3`%II(IVVJVU6RKV5:S24 M K69;S;:&;0W;&K8U;&MT&]<"KNH<9L`*D.:Y-SD61R:0>D6YJY_JQ_*Y^K:F25 M NZWGJJ?#OGJHMLVP>EH?Q*E^[0#M$1FQN#NHL^&DE__HI,_?-48O[@4/^P_'26 M NMP\ET>Q6;O*M28<')_1^_)W41^+D@+L/$`2#W>%1-!E@2\*=-%>.+/YHLUW27 M ;!38LP,;:\.YM/TVH?UNVAY:9723'9WF,7_;L8OSN#O-VT.WN\1A:%Q+<5-S28 M #CD0=Z>N0397,RKR`<^00%8R;DY]UZB2'3>^LY."BCL)M[:@93",:"K-_B4%29 M &L_T8G(*)I[;SU3!QLLS-0W2USVT`;0#!*'FT=$IQ^[\T@OY*-!7(Y))/&%W30 M ]A+B:72SJ*5\5412=4'HI+YH:RZ8.FEGTF1PG`Y+&K;#R2R>\FB5^6C]?5/)31 M $A,65>42UR'<+7'U(M<L<NTB-UWD9HO<?(FKE];F$&ZQ39X@6D94V=C!>RO"32 M +V(O`B^B+D(NXBV"+2(MPBQB+`*L,<Y8M_3$5+F9(6R>Z!YT8,"]!,&FQS,833 M _=/BB[@3CRV@7=\NU[?+]>UR?;M<WRY3I>O;I6%<WR[_\=L%U'"&T[_OAS-<34 EOQ.?/KX7;T[N%.^KS9M;[/SJ\!WR@OD(;K_S_@31?$4;S1@`````1 begin 644 cyc5_lp.res.gz 2 M'XL("/H&>U4``V-Y8S5?;'`N<F5S`.U82V_C-A"^^U<0BQXDV-)J^!"E!%D4 3 MVP*+!1:]I+=%4=B6$FOA1(;I=-O]]9T9ZF5)<8NB0'LP`P_(>7'(T7PD<__S 4 MCQ]_$D+`.R3'ZOE1',6=DDFB5L%ZM5EM5\6J#%?[P^WBOE&5I%H5Y7HOJKOU 5 M<K/<+HN56&^6F^UR6RS7Y;(H:;Q%!@XWY7)=E"@I5YT+%8N^D2;^4&V#>FM4 6 M)$/OHB@CZ&?6-'-].%7U<W`XUJ>P%YD^J"]PYT[%P^/^*:A0`_NB>A8!+RH\ 7 M6U50'`(3KGX(%Y]UDIL;^0L$.G0R4*%3@0R==M0UCKBHZ8(T3"/G`HO=''\` 8 M862)`8I&I`$VC"(715F$_908&1*9$"$EF881=R/?\JA1A"0`\BDE$<-R[&AR 9 M!Q"US8&D.5RC#(T?=\YTH'@Z#L4[2L+.1P2:#&3'`1/1VK"#RPMH;K#(7@3W 10 M-]T,H[;`!!0OVY/8'JM3><24W$"2B^UNC9O=\Y24BYC:DDCD?]$R&HXB[BR7 11 MV&'2R?R(:=MBUA\J<>M4SBR6V(B,8R?&XK>B>KH3VOCP_FZ;.KO4_B?*796D 12 M5"6N^E8&7R"\Q?[;MSP4P7,=B_I!'.K]'RZD>MG63X>74UF(#^\7IG-@!V4F 13 MJ<QVU7[#9=;H"V*4QY-PF/_2B:_5:2>:$F1XF=;AZGM?B2E7XM>R>MR=G'AQ 14 M./=#?1PYO!&PZOX6GR&1Z@:F9>L,#9JRC5Q*7_>_4;9Y7[9<I$BR,.HDKI%" 15 MTI8N-ZY+8L.X3EMQ%GHEJFXJW[-);5?C/6R0-Q5Q\(-$<UUS'9NVCM-HME:S 16 M;%*JJ4D8+#EEM.OSL,GIVC-P8M+`PV>?!Z!$Z(0RH7)&4!Q$F`^2!)HRHG%_ 17 M<:O<#M.B:2,,B0PGB[;4T/X;VG]#V^9VOMG`J$[%>BFN%FB/4@+-E$PLI<R2 18 M0ZL'QEW+O.>4-%+36;$72UYLOZ,38VQY$ZTZ"]2[TUVBVO'8`X+\8!%L*1O- 19 M(+4^?+*W/:ZW\2%1<PL":!S1PE-RGE)8*6V.7Y#VGR;VN`CRYFBQ67AAG>Q: 20 M#E-CNY#[F?H-3'R`PTE<D/E#YS7_[30JT-GY9S!,[V![+OOI'>I`D9VB>!3% 21 M0Y]BH&DWM+G@!DQ7>%S2:$@V:MX&T@8EN&`I1CF-$6P#,&>:9QK97VKD`>BP 22 M@0["I*%0)H1GKM?H)?"J1`XEZ5"B`J!4$C+V3,W0"=W,THP9Z9AAQXQLS,A' 23 M#)6T`-V,(>@B4PSNU%%,-5/#-&5JF69,<Z(Z80I,)5.VU6RKV5:SK69;S;:: 24 M;0W;&K8U;&O8UN@FGAE$U3E,(!7`YOEB="0.3,`NBG)7/]6/Y7/U;4T7VX6K 25 MG@[[ZJ':^F'UM#Z(4_W:X=EA,:)P>TAG_2DO_]$IG[_S1B_N!0_Z#\>ZW#R7 26 M1[%9N\HU)AP<G\_[\G=1'XN2`FP]0!+W]X1$T$6!+PG^FCUS7O,UFV_8*$C/ 27 M#FNL"N=L\U5"\\4T/;3*Z!X[.,EC_JIC%^=Q>Y(W!VY[A</@N(IB7VT..1"W 28 M)ZY!-M<Q*O+ASF!`5C+V)[[SJF3'C6_LI*#B5L*M*649]B.:2K-_28'&$[V8 29 MG(*)I_8354CC^9E\`_NZAR:`9H#PXY\<K7+LSJ^\D`\"?34BF<0C=FLO(1Y' 30 M-XE:RE=%)%47A$[JB[;F@JF3Z42:](YMOZ1^.YS,XC&/5ID/UM\UE<PQ8595 31 MSG$=`MX<5\]RS2PWG>7:66XVR\WGN'IN;0X!%]OH`:)E1)6-';RS(@`C^B+T 32 M(NXBZ"+B(MPBUB+0(LHBQ!KC3.KF'I@J-Q.,S1/=P0[TR)<@W'2(!H/_67P1 33 M=^*Q@;3KR^7Z<KF^7*XOE^O+Y?IRN;Y<_O.7"ZC^_#X[OO4[\>GC>_'FY$[Q 34 :OMJ\N<7.KPX?(2^8AO#VN\6??X;5&\<8```` 35 35 ` 36 36 end -
Tst/Short/cyc5_lp.stat
r257093d r7036d0 1 1 >> tst_memory_0 :: 1 231858763:3100-2009010717:3-1-0:ix86-Linux:nepomuck:347188 1292524760:3120- 13145 :3-1-2:ix86-Linux:mamawutz:3580082 1 >> tst_memory_1 :: 1 231858763:3100-2009010717:3-1-0:ix86-Linux:nepomuck:1426212 1292524760:3120- 13145 :3-1-2:ix86-Linux:mamawutz:13427683 1 >> tst_memory_2 :: 1 231858763:3100-2009010717:3-1-0:ix86-Linux:nepomuck:1909540 1292524760:3120- 13145 :3-1-2:ix86-Linux:mamawutz:19385724 1 >> tst_timer_1 :: 1 231858763:3100-2009010717:3-1-0:ix86-Linux:nepomuck:91 1292524760:3120- 13145 :3-1-2:ix86-Linux:mamawutz:361 1 >> tst_memory_0 :: 1434126079:4020, 64 bit:4.0.2:x86_64-Linux:dilbert:457928 2 1 >> tst_memory_1 :: 1434126079:4020, 64 bit:4.0.2:x86_64-Linux:dilbert:4329472 3 1 >> tst_memory_2 :: 1434126079:4020, 64 bit:4.0.2:x86_64-Linux:dilbert:4347232 4 1 >> tst_timer_1 :: 1434126079:4020, 64 bit:4.0.2:x86_64-Linux:dilbert:1830 -
Tst/Short/ok_s.lst
r257093d r7036d0 44 44 bug_tr707 45 45 bug_tr709 46 bug_tr723 47 bug_tr724 46 48 bug_genus_etc 47 49 conv_bi -
libpolys/coeffs/numbers.cc
r257093d r7036d0 228 228 number ndCopyMap(number a, const coeffs aRing, const coeffs r) 229 229 { 230 assume( getCoeffType(r) == getCoeffType(aRing) ); 230 // aRing and r need not be the same, but must be the same representation 231 assume(aRing->rep==r->rep); 231 232 if ( nCoeff_has_simple_Alloc(r) && nCoeff_has_simple_Alloc(aRing) ) 232 233 return a; -
libpolys/coeffs/rintegers.cc
r257093d r7036d0 339 339 { 340 340 /* dst = currRing */ 341 if (nCoeff_is_Ring_Z(src) || nCoeff_is_Ring_ModN(src) || nCoeff_is_Ring_PtoM(src)) 341 /* dst = nrn */ 342 if ((src->rep==n_rep_gmp) 343 && (nCoeff_is_Ring_Z(src) || nCoeff_is_Ring_ModN(src) || nCoeff_is_Ring_PtoM(src))) 344 { 345 return ndCopyMap; //nrzCopyMap; 346 } 347 if ((src->rep==n_rep_gap_gmp) /*&& nCoeff_is_Ring_Z(src)*/) 342 348 { 343 349 return ndCopyMap; //nrzCopyMap; -
libpolys/polys/ext_fields/transext.cc
r257093d r7036d0 193 193 { 194 194 p_Test(den, ntRing); 195 196 195 if(p_IsConstant(den, ntRing) && (n_IsOne(pGetCoeff(den), ntCoeffs))) 197 196 { … … 199 198 return FALSE; 200 199 } 201 202 200 if( !n_GreaterZero(pGetCoeff(den), ntCoeffs) ) 203 201 { … … 205 203 return FALSE; 206 204 } 207 208 205 // test that den is over integers!? 209 210 }else206 } 207 else 211 208 { // num != NULL // den == NULL 212 213 209 // if( COM(t) != 0 ) 214 210 // { … … 343 339 if (IS0(a)) return NULL; 344 340 fraction f = (fraction)a; 345 poly g = p_Copy(NUM(f), ntRing); 346 poly h = NULL; if (!DENIS1(f)) h = p_Copy(DEN(f), ntRing); 347 fraction result = (fraction)omAllocBin(fractionObjectBin); 348 NUM(result) = g; 349 DEN(result) = h; 341 poly g = NUM(f); 342 poly h = NULL; 343 h =DEN(f); 344 fraction result = (fraction)omAlloc0Bin(fractionObjectBin); 345 NUM(result) = p_Copy(g,cf->extRing); 346 DEN(result) = p_Copy(h,cf->extRing); 350 347 COM(result) = COM(f); 351 348 ntTest((number)result); … … 384 381 if( !n_GreaterZero(g, ntCoeffs) ) 385 382 { 386 NUM (f) = p_Neg(NUM (f), ntRing); // Ugly :(((383 NUM (f) = p_Neg(NUM (f), ntRing); 387 384 g = n_InpNeg(g, ntCoeffs); 388 385 } … … 393 390 if( !n_IsOne(g, ntCoeffs) ) 394 391 { 395 DEN (f) = p_NSet(g, ntRing); // update COM(f)???392 DEN (f) = p_NSet(g, ntRing); 396 393 COM (f) ++; 397 394 assume( DEN (f) != NULL ); … … 1250 1247 1251 1248 if (IS0(a)) return; 1249 if (DENIS1(f) || NUMIS1(f)) { COM(f) = 0; return; } 1252 1250 if (!simpleTestsHaveAlreadyBeenPerformed) 1253 1251 { 1254 if (DENIS1(f) || NUMIS1(f)) { COM(f) = 0; return; }1255 1252 1256 1253 /* check whether NUM(f) = DEN(f), and - if so - replace 'a' by 1 */ … … 1260 1257 p_Delete(&DEN(f), ntRing); DEN(f) = NULL; 1261 1258 COM(f) = 0; 1262 ntTest(a); // !!!!1259 ntTest(a); 1263 1260 return; 1264 1261 } … … 1455 1452 //PrintS(" den=");p_wrp(DEN(a),ntRing);PrintLn(); 1456 1453 definiteGcdCancellation(a, cf, FALSE); 1457 fraction f=(fraction)a; 1458 if ((DEN(f)!=NULL) 1459 &&(!n_GreaterZero(pGetCoeff(DEN(f)),ntCoeffs))) 1460 { 1461 NUM(f)=p_Neg(NUM(f),ntRing); 1462 DEN(f)=p_Neg(DEN(f),ntRing); 1463 a=(number)f; 1454 if ((DEN((fraction)a)!=NULL) 1455 &&(!n_GreaterZero(pGetCoeff(DEN((fraction)a)),ntCoeffs))) 1456 { 1457 NUM((fraction)a)=p_Neg(NUM((fraction)a),ntRing); 1458 DEN((fraction)a)=p_Neg(DEN((fraction)a),ntRing); 1464 1459 } 1465 1460 } … … 1843 1838 fraction f = (fraction)a; 1844 1839 poly g = prMapR(NUM(f), nMap, rSrc, rDst); 1840 /* g may contain summands with coeff 0 */ 1841 poly hh=g; 1842 poly prev=NULL; 1843 while(hh!=NULL) 1844 { 1845 if (n_IsZero(pGetCoeff(hh),rDst->cf)) 1846 { 1847 if (prev==NULL) 1848 { 1849 g=p_LmFreeAndNext(g,rDst); 1850 hh=g; 1851 } 1852 else 1853 { 1854 prev->next=p_LmFreeAndNext(prev->next,rDst); 1855 hh=prev->next; 1856 } 1857 } 1858 else 1859 { 1860 prev=hh; 1861 pIter(hh); 1862 } 1863 } 1864 if (g==NULL) return NULL; 1845 1865 1846 1866 poly h = NULL; 1847 1867 1848 1868 if (!DENIS1(f)) 1869 { 1849 1870 h = prMapR(DEN(f), nMap, rSrc, rDst); 1871 /* h may contain summands with coeff 0 */ 1872 hh=h; 1873 prev=NULL; 1874 while(hh!=NULL) 1875 { 1876 if (n_IsZero(pGetCoeff(hh),rDst->cf)) 1877 { 1878 if (prev==NULL) 1879 { 1880 h=p_LmFreeAndNext(h,rDst); 1881 hh=h; 1882 } 1883 else 1884 { 1885 prev->next=p_LmFreeAndNext(prev->next,rDst); 1886 hh=prev->next; 1887 } 1888 } 1889 else 1890 { 1891 prev=hh; 1892 pIter(hh); 1893 } 1894 } 1895 if (h==NULL) WerrorS("mapping to */0"); 1896 } 1850 1897 1851 1898 fraction result = (fraction)omAllocBin(fractionObjectBin); -
libpolys/polys/monomials/p_polys.cc
r257093d r7036d0 351 351 #ifndef SING_NDEBUG 352 352 #if MYTEST 353 Print("p_Setm_General: ro_isTemp ord: pos: %d, p: ", pos); p_ DebugPrint(p, r, r, 1);353 Print("p_Setm_General: ro_isTemp ord: pos: %d, p: ", pos); p_wrp(p, r); 354 354 #endif 355 355 #endif … … 388 388 #if MYTEST 389 389 // if( p->exp[o->data.isTemp.start] > 0 ) 390 PrintS("after Values: "); p_ DebugPrint(p, r, r, 1);390 PrintS("after Values: "); p_wrp(p, r); 391 391 #endif 392 392 #endif … … 399 399 #ifndef SING_NDEBUG 400 400 #if MYTEST 401 Print("p_Setm_General: ro_is ord: pos: %d, p: ", pos); p_ DebugPrint(p, r, r, 1);401 Print("p_Setm_General: ro_is ord: pos: %d, p: ", pos); p_wrp(p, r); 402 402 #endif 403 403 #endif … … 417 417 #ifndef SING_NDEBUG 418 418 #if MYTEST 419 Print("p_Setm_General: ro_is : in rSetm: pos: %d, c: %d > limit: %d\n", c, pos, limit); // p_DebugPrint(p, r, r, 1);419 Print("p_Setm_General: ro_is : in rSetm: pos: %d, c: %d > limit: %d\n", c, pos, limit); 420 420 PrintS("preComputed Values: "); 421 p_ DebugPrint(p, r, r, 1);421 p_wrp(p, r); 422 422 #endif 423 423 #endif … … 447 447 #if MYTEST 448 448 Print("Respective F[c - %d: %d] pp: ", limit, c); 449 p_ DebugPrint(pp, r, r, 1);449 p_wrp(pp, r); 450 450 #endif 451 451 #endif … … 492 492 // TODO: how to check this for computed values??? 493 493 #if MYTEST 494 PrintS("Computed Values: "); p_ DebugPrint(p, r, r, 1);494 PrintS("Computed Values: "); p_wrp(p, r); 495 495 #endif 496 496 #endif … … 511 511 #if MYTEST 512 512 Print("ELSE p_Setm_General: ro_is :: c: %d <= limit: %d, vo: %d, exp: %d\n", c, limit, vo, p->exp[vo]); 513 p_ DebugPrint(p, r, r, 1);513 p_wrp(p, r); 514 514 #endif 515 515 #endif … … 3847 3847 if( !DENIS1((fraction)z) ) 3848 3848 { 3849 if (p_IsConstant(DEN((fraction)z),srcExtRing)) 3850 { 3851 number n=pGetCoeff(DEN((fraction)z)); 3852 zz=p_Div_nn(zz,n,srcExtRing); 3853 p_Normalize(zz,srcExtRing); 3854 } 3855 else 3849 if (!p_IsConstant(DEN((fraction)z),srcExtRing)) 3856 3850 WarnS("Not defined: Cannot map a rational fraction and make a polynomial out of it! Ignoring the denumerator."); 3857 3851 } … … 3885 3879 qq = p_PermPoly(zz, par_perm-1, srcExtRing, dst, nMap, NULL, rVar (srcExtRing)-1); 3886 3880 3881 if(nCoeff_is_transExt(srcCf) 3882 && (!DENIS1((fraction)z)) 3883 && p_IsConstant(DEN((fraction)z),srcExtRing)) 3884 { 3885 number n=nMap(pGetCoeff(DEN((fraction)z)),srcExtRing->cf, dstCf); 3886 qq=p_Div_nn(qq,n,dst); 3887 n_Delete(&n,dstCf); 3888 p_Normalize(qq,dst); 3889 } 3887 3890 p_Test (qq, dst); 3888 3889 // poly p_PermPoly (poly p, int * perm, const ring oldRing, const ring dst, nMapFunc nMap, int *par_perm, int OldPar)3890 3891 // assume( FALSE ); WarnS("longalg missing 2");3892 3891 3893 3892 return qq; … … 3905 3904 PrintS("\np_PermPoly::p: "); p_Write(p, oldRing, oldRing); PrintLn(); 3906 3905 #endif 3907 3908 3906 const int OldpVariables = rVar(oldRing); 3909 3907 poly result = NULL; … … 3911 3909 poly aq = NULL; /* the map coefficient */ 3912 3910 poly qq; /* the mapped monomial */ 3913 3914 3911 assume(dst != NULL); 3915 3912 assume(dst->cf != NULL); 3916 3917 3913 while (p != NULL) 3918 3914 { … … 3922 3918 qq = p_Init(dst); 3923 3919 assume( nMap != NULL ); 3924 3925 3920 number n = nMap(p_GetCoeff(p, oldRing), oldRing->cf, dst->cf); 3926 3927 3921 n_Test (n,dst->cf); 3928 3929 3922 if ( nCoeff_is_algExt(dst->cf) ) 3930 3923 n_Normalize(n, dst->cf); 3931 3932 3924 p_GetCoeff(qq, dst) = n;// Note: n can be a ZERO!!! 3933 // coef may be zero:3934 // p_Test(qq, dst);3935 3925 } 3936 3926 else 3937 3927 { 3938 3928 qq = p_One(dst); 3939 3940 3929 // aq = naPermNumber(p_GetCoeff(p, oldRing), par_perm, OldPar, oldRing); // no dst??? 3941 3930 // poly n_PermNumber(const number z, const int *par_perm, const int P, const ring src, const ring dst) 3942 3931 aq = n_PermNumber(p_GetCoeff(p, oldRing), par_perm, OldPar, oldRing, dst); 3943 3944 3932 p_Test(aq, dst); 3945 3946 3933 if ( nCoeff_is_algExt(dst->cf) ) 3947 3934 p_Normalize(aq,dst); 3948 3949 3935 if (aq == NULL) 3950 3936 p_SetCoeff(qq, n_Init(0, dst->cf),dst); // Very dirty trick!!! 3951 3952 3937 p_Test(aq, dst); 3953 3938 } 3954 3955 3939 if (rRing_has_Comp(dst)) 3956 3940 p_SetComp(qq, p_GetComp(p, oldRing), dst); 3957 3958 3941 if ( n_IsZero(pGetCoeff(qq), dst->cf) ) 3959 3942 { … … 3981 3964 assume( dst->cf->extRing == NULL ); 3982 3965 number ee = n_Param(1, dst); 3983 3984 3966 number eee; 3985 3967 n_Power(ee, e, &eee, dst->cf); //nfDelete(ee,dst); 3986 3987 3968 ee = n_Mult(c, eee, dst->cf); 3988 3969 //nfDelete(c,dst);nfDelete(eee,dst); … … 3993 3974 const int par = -perm[i]; 3994 3975 assume( par > 0 ); 3995 3996 3976 // WarnS("longalg missing 3"); 3997 3977 #if 1 3998 3978 const coeffs C = dst->cf; 3999 3979 assume( C != NULL ); 4000 4001 3980 const ring R = C->extRing; 4002 3981 assume( R != NULL ); 4003 4004 3982 assume( par <= rVar(R) ); 4005 4006 3983 poly pcn; // = (number)c 4007 4008 3984 assume( !n_IsZero(c, C) ); 4009 4010 3985 if( nCoeff_is_algExt(C) ) 4011 3986 pcn = (poly) c; 4012 3987 else // nCoeff_is_transExt(C) 4013 3988 pcn = NUM((fraction)c); 4014 4015 3989 if (pNext(pcn) == NULL) // c->z 4016 3990 p_AddExp(pcn, -perm[i], e, R); … … 4020 3994 p_SetExp(mmc, -perm[i], e, R); 4021 3995 p_Setm(mmc, R); 4022 4023 3996 number nnc; 4024 3997 // convert back to a number: number nnc = mmc; … … 4027 4000 else // nCoeff_is_transExt(C) 4028 4001 nnc = ntInit(mmc, C); 4029 4030 4002 p_GetCoeff(qq, dst) = n_Mult((number)c, nnc, C); 4031 4003 n_Delete((number *)&c, C); 4032 4004 n_Delete((number *)&nnc, C); 4033 4005 } 4034 4035 4006 mapped_to_par=1; 4036 4007 #endif … … 4075 4046 if (aq!=NULL) 4076 4047 qq=p_Mult_q(aq,qq,dst); 4077 4078 4048 aq = qq; 4079 4080 4049 while (pNext(aq) != NULL) pIter(aq); 4081 4082 4050 if (result_last==NULL) 4083 4051 { … … 4096 4064 } 4097 4065 } 4098 4099 4066 result=p_SortAdd(result,dst); 4100 4067 #else … … 4127 4094 #endif 4128 4095 p_Test(result,dst); 4129 4130 4096 #if 0 4131 4097 p_Test(result,dst); -
libpolys/polys/monomials/ring.cc
r257093d r7036d0 4246 4246 4247 4247 4248 #ifndef SING_NDEBUG4249 /// debug-print at most nTerms (2 by default) terms from poly/vector p,4250 /// assuming that lt(p) lives in lmRing and tail(p) lives in tailRing.4251 void p_DebugPrint(const poly p, const ring lmRing, const ring tailRing, const int nTerms)4252 {4253 assume( nTerms >= 0 );4254 if( p != NULL )4255 {4256 assume( p != NULL );4257 4258 p_Write(p, lmRing, tailRing);4259 4260 if( (p != NULL) && (nTerms > 0) )4261 {4262 assume( p != NULL );4263 assume( nTerms > 0 );4264 4265 // debug pring leading term4266 m_DebugPrint(p, lmRing);4267 4268 poly q = pNext(p); // q = tail(p)4269 4270 // debug pring tail (at most nTerms-1 terms from it)4271 for(int j = nTerms - 1; (q !=NULL) && (j > 0); pIter(q), --j)4272 m_DebugPrint(q, tailRing);4273 4274 if (q != NULL)4275 PrintS("...\n");4276 }4277 }4278 else4279 PrintS("0\n");4280 }4281 #endif4282 4283 4284 4248 // F = system("ISUpdateComponents", F, V, MIN ); 4285 4249 // // replace gen(i) -> gen(MIN + V[i-MIN]) for all i > MIN in all terms from F! … … 4296 4260 #ifdef PDEBUG 4297 4261 Print("F[%d]:", j); 4298 p_ DebugPrint(F->m[j], r, r, 0);4262 p_wrp(F->m[j], r); 4299 4263 #endif 4300 4264 … … 4315 4279 Print("new F[%d]:", j); 4316 4280 p_Test(F->m[j], r); 4317 p_DebugPrint(F->m[j], r, r, 0); 4318 #endif 4319 } 4320 4321 } 4322 4323 4324 4281 p_wrp(F->m[j], r); 4282 #endif 4283 } 4284 } 4325 4285 4326 4286 /*2 -
libpolys/polys/monomials/ring.h
r257093d r7036d0 801 801 #endif 802 802 803 #ifndef SING_NDEBUG804 /// debug-print at most nTerms (2 by default) terms from poly/vector p,805 /// assuming that lt(p) lives in lmRing and tail(p) lives in tailRing.806 void p_DebugPrint(const poly p, const ring lmRing, const ring tailRing, const int nTerms = 2);807 #endif808 809 803 int64 * rGetWeightVec(ring r); 810 804 void rSetWeightVec(ring r, int64 *wv); -
libpolys/polys/polys0.cc
r257093d r7036d0 30 30 const BOOLEAN bNotShortOut = (rShortOut(r) == FALSE); 31 31 32 if (pGetCoeff(p)!=NULL) 33 n_Normalize(pGetCoeff(p),C); 34 35 if (((p_GetComp(p,r) == (short)ko) 32 if (((p_GetComp(p,r) == ko) 36 33 &&(p_LmIsConstantComp(p, r))) 37 34 || ((!n_IsOne(pGetCoeff(p),C)) … … 123 120 // Just think of other ring using the VERY SAME naRing and possible 124 121 // side-effects... 122 // but this is not a problem: i/o is not thread-safe anyway. 125 123 const BOOLEAN bLMShortOut = rShortOut(lmRing); 126 124 const BOOLEAN bTAILShortOut = rShortOut(tailRing); … … 144 142 } 145 143 p_Normalize(p,lmRing); 144 if ((n_GetChar(lmRing->cf) == 0) 145 && (nCoeff_is_transExt(lmRing->cf))) 146 p_Normalize(p,lmRing); /* Manual/absfact.tst */ 146 147 if ((p_GetComp(p, lmRing) == 0) || (!lmRing->VectorOut)) 147 148 { … … 244 245 r = pNext(pNext(p)); 245 246 pNext(pNext(p)) = NULL; 246 p_Write0(p, lmRing,tailRing);247 p_Write0(p, tailRing); 247 248 if (r!=NULL) 248 249 { -
libpolys/polys/simpleideals.cc
r257093d r7036d0 73 73 for (int i = 0; i <= j; i++) 74 74 { 75 Print("generator %d: ",i); p_ DebugPrint(id->m[i], lmRing, tailRing, debugPrint);75 Print("generator %d: ",i); p_wrp(id->m[i], lmRing, tailRing); 76 76 } 77 77 }
Note: See TracChangeset
for help on using the changeset viewer.