Changeset 311eaa in git
- Timestamp:
- Dec 17, 2018, 12:25:26 PM (5 years ago)
- Branches:
- (u'spielwiese', 'e7cc1ebecb61be8b9ca6c18016352af89940b21a')
- Children:
- 908905bf1d33ff716b539be45540d26738ada72f
- Parents:
- ee3e7cd650e2cf6d6e770d6b57b1681594c7cda7fe8998fec9f89537d877f2b27d372fbe28e9b521
- git-author:
- Hans Schoenemann <hannes@mathematik.uni-kl.de>2018-12-17 12:25:26+01:00
- git-committer:
- GitHub <noreply@github.com>2018-12-17 12:25:26+01:00
- Files:
-
- 1 added
- 22 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/LIB/freegb.lib
ree3e7cd r311eaa 5 5 LIBRARY: freegb.lib Two-sided Groebner bases in free algebras and tools via Letterplace approach 6 6 AUTHORS: Viktor Levandovskyy, viktor.levandovskyy at math.rwth-aachen.de 7 Grischa Studzinski, grischa.studzinski at math.rwth-aachen.de8 Karim Abou Zeid, karim.abou.zeid atrwth-aachen.de7 @* Karim Abou Zeid, karim.abou.zeid at rwth-aachen.de 8 @* Grischa Studzinski, grischa.studzinski at math.rwth-aachen.de 9 9 10 10 OVERVIEW: For the theory, see chapter 'Letterplace' in the Singular Manual. 11 11 12 This library provides access to kernel functions and also contains legacy code (partially as 12 13 static procedures) for compatibility reasons. … … 22 23 23 24 PROCEDURES: 24 makeLetterplaceRing(d); creates a ring with d blocks of shifted original variables25 makeLetterplaceRing(d); creates a Letterplace ring out of given data 25 26 setLetterplaceAttributes(R,d,b); supplies ring R with the letterplace structure 26 27 lieBracket(a,b[, N]); Lie bracket ab-ba of two letterplace polynomials … … 32 33 isVar(p); check whether p is a power of a single variable 33 34 34 lpLmDivides(ideal I, poly p) tests if there is a polynomial q in I withLM(q)|LM(p)35 lpVarAt(poly p, int pos) 35 lpLmDivides(ideal I, poly p); tests whether there exists q in I, such that LM(q)|LM(p) 36 lpVarAt(poly p, int pos); returns the variable (as a poly) at position pos of the poly p 36 37 37 38 SEE ALSO: fpadim_lib, fpaprops_lib, fpalgebras_lib, LETTERPLACE -
Singular/iparith.cc
rfe8998f r311eaa 1873 1873 res->data=(void*)id_Delete_Pos(I,pos-1,currRing); 1874 1874 return res->data==NULL; 1875 } 1876 static BOOLEAN jjDET2(leftv res, leftv u, leftv v) 1877 { 1878 matrix m=(matrix)u->Data(); 1879 DetVariant d=mp_GetAlgorithmDet((char*)v->Data()); 1880 res ->data = mp_Det(m,currRing,d); 1881 return FALSE; 1882 } 1883 static BOOLEAN jjDET2_S(leftv res, leftv u, leftv v) 1884 { 1885 DetVariant d=mp_GetAlgorithmDet((char*)v->Data()); 1886 ideal m=(ideal)u->Data(); 1887 res ->data = sm_Det(m,currRing,d); 1888 return FALSE; 1875 1889 } 1876 1890 static BOOLEAN jjDIFF_P(leftv res, leftv u, leftv v) … … 3867 3881 { 3868 3882 matrix m=(matrix)v->Data(); 3869 poly p; 3870 if (sm_CheckDet((ideal)m,m->cols(),TRUE, currRing)) 3871 { 3872 ideal I=id_Matrix2Module(mp_Copy(m, currRing),currRing); 3873 p=sm_CallDet(I, currRing); 3874 idDelete(&I); 3875 } 3876 else 3877 p=singclap_det(m,currRing); 3878 res ->data = (char *)p; 3883 res ->data = mp_Det(m,currRing); 3879 3884 return FALSE; 3880 3885 } … … 3932 3937 { 3933 3938 ideal I=(ideal)v->Data(); 3934 poly p; 3935 if (IDELEMS(I)<1) return TRUE; 3936 if (!sm_CheckDet(I,IDELEMS(I),FALSE, currRing)) 3937 { 3938 matrix m=id_Module2Matrix(id_Copy(I,currRing),currRing); 3939 p=singclap_det(m,currRing); 3940 idDelete((ideal *)&m); 3941 } 3942 else 3943 p=sm_CallDet(I, currRing); 3944 res->data = (char *)p; 3939 res->data=(char*)sm_Det(I,currRing); 3945 3940 return FALSE; 3946 3941 } -
Singular/table.h
rfe8998f r311eaa 120 120 ,{D(jjDET_BI), DET_CMD, BIGINT_CMD, BIGINTMAT_CMD , ALLOW_NC |ALLOW_RING} 121 121 ,{D(jjDET_I), DET_CMD, INT_CMD, INTMAT_CMD , ALLOW_NC |ALLOW_RING} 122 ,{D(jjDET_S), DET_CMD, POLY_CMD, SMATRIX_CMD , NO_NC |NO_RING} 122 123 ,{D(jjDET), DET_CMD, POLY_CMD, MATRIX_CMD , NO_NC |ALLOW_RING} 123 ,{D(jjDET_S), DET_CMD, POLY_CMD, MODUL_CMD , NO_NC |NO_RING}124 124 ,{D(jjDIM), DIM_CMD, INT_CMD, IDEAL_CMD , ALLOW_PLURAL |ALLOW_RING} 125 125 ,{D(jjDIM), DIM_CMD, INT_CMD, MODUL_CMD , ALLOW_PLURAL |ALLOW_RING} … … 616 616 ,{D(jjDelete_ID), DELETE_CMD, MODUL_CMD, MODUL_CMD, INT_CMD, ALLOW_NC |ALLOW_RING} 617 617 ,{D(lDelete), DELETE_CMD, LIST_CMD, LIST_CMD, INT_CMD, ALLOW_NC |ALLOW_RING} 618 ,{D(jjDET2_S), DET_CMD, POLY_CMD, SMATRIX_CMD,STRING_CMD, NO_NC |NO_RING} 619 ,{D(jjDET2), DET_CMD, POLY_CMD, MATRIX_CMD, STRING_CMD, NO_NC |ALLOW_RING} 618 620 ,{D(jjDIFF_P), DIFF_CMD, POLY_CMD, POLY_CMD, POLY_CMD, ALLOW_PLURAL |ALLOW_RING} 619 621 ,{D(jjDIFF_P), DIFF_CMD, VECTOR_CMD, VECTOR_CMD, POLY_CMD, ALLOW_PLURAL |ALLOW_RING} … … 1011 1013 { "delete", 0, DELETE_CMD , CMD_2}, 1012 1014 { "denominator", 0, DENOMINATOR_CMD , CMD_1}, 1013 { "det", 0, DET_CMD , CMD_1 },1015 { "det", 0, DET_CMD , CMD_12}, 1014 1016 { "diff", 0, DIFF_CMD , CMD_2}, 1015 1017 { "dim", 0, DIM_CMD , CMD_12}, -
Tst/Buch/Example_2_6_15.res.gz.uu
rfe8998f r311eaa 1 1 begin 640 Example_2_6_15.res.gz 2 M'XL(",(123X``T5X86UP;&5?,E\V7S$U+G)E<P"55VUOVS80_JY?013[(-N4 3 M+5+O]>0A=A*@0.T!S=`O@9>ZMKP)<"1#5AQMP_[[[BB*I!*[P!1%HLCGCO?& 4 MN_/#;[>?5H00-B.?/\W)A_I4CP_Y]P]3ZT&N\!F!R:>\R&M[,+7P368S<M=L 5 MGH^'[(D_A4\L&!?9Z_A4;VI%YLV(&OMC<JS*+<F:.BMVV6Y55L^;PST\[>=- 6 M7>4-60X4.!B3?]1'.(8'R8OZG&W).67C<5&5KR=[.9AJ]K$)>DT[Q,A`CXIM 7 M>>B3,5>020%6Z;8LMIO:WE=9]ESN7@Z9W1$/*-`I,B[(5FE=;8K3L3QE-NR< 8 M556VL_74:C`P2'QSIT5Z>OD.8WM%S_1LH%I=%^DAW]?V@KX39($\R612_YF! 9 MLN>L.F4=SW)/%HI/;.YV:^[V:JC/6_5O+^EQ.S"!K<*'_%23+UFZH+=*9-XJ 10 M5F7U2U787S*@TF2@SK_J(]+1P$&^\ECG96'#7@]S;0&>S$B5%W^0+ZE+[69` 11 MP0J[HU[W7!&D'UK5^F'J,;V#!Q)W<?48K.%.&26,NN)/H3PAO'$YG#KO4/Y; 12 M%'$IW)PR$Q5<1B'.0(774(#3FABV\F*ER4IIPBD1-\BJ<,D[S@P$1)S0O,/Y 13 M[CN=)<X13X5CEW'L+8Y?V+=C1IC2R8=LL&P#>_4^L/&P#)?#E8;[,T@8$(YX 14 M8"W'FP!+#GL'8A13%,>'IQ5,X.6$\._AT&&XSA!EH0RH//&HE)^@3'!9'E(Q 15 M8!-'8H1X'L&#M'LA#-^2RA=Z*=D"[1X_5.ZY29=.,S14"W3<^H9'??"H.$J? 16 MTTOI\,:@2C15X(ZE03X_LC5@7-J+(:$A6,?C@5IQX@GWO2A02+!9?Z;'!6P7 17 M`K$339CGN@;1Q(^CH#?AF=_$8F$\82$7;!F*0!&$,\W(:U?0,3U9^)MOM+P? 18 M="C<(W$IN`=$ZFTMUIN1E"$1W$U9'!XEG=X.GR3PZEM%<[G`5MI'6=W(*0'7 19 M'N!K3(^-[_B--PH:#N^13W$+F3M,N^+5.)Q>67)%E%Y=<MLT<WD)%K5\1KT- 20 M?!667QFF#7_=53<,'[CI<JA'_;'ZTI$80,AW_#CR8^M4@/A:EXD@-`2(9)#? 21 MI_O-MBZK_.],V.T1LHC).)Z1^ZD%K#Y:H-43,F;MB*_3AH_DAP<?#K=@4N`P 22 M%7'%PS@FH2L;C6-Y^.O7_5VQ*[L&8TYQCAQ5GQ$RH\\(11X#[Y)<"1?ZW=Q. 23 MMA1&J0I%*E=G?UMF^_W)/M+SIK*94?K#V,#=/>[6<*=&EMAI:.0:T(6$W@B+ 24 M#>\T2DBZ+RL[3_DT_UF*!GDC'XV4<I&07:D7=87G+KT;SC6O6$XOTL7HYC'O 25 M[Q0+>50)C\7&LM0OM-BQ;]3YV$B.L4Z.#ZGAD"6];V/G=VYPB72(,9:>ZIW] 26 M,/S*#$#<E018QZ*01%%(F<>2`--VQ-R(,I]C6;#\.(XQ!T4\B*DEEKHD*4\2 27 MSA&=TV,CAA)0^Y*\WMKHB1)FB,LOB)MP+2ZJ"<7+QP(*^SNBB%IXKE$JF/&Z 28 M`3R9EBHQCG2BC_2\.\M@"`K<Z5?#C@DX8)?5&*KD[85'YQ=<Q78Q(`T)21N% 29 M1!Z208N`'K"L2+G=OF`S"">`M,P/>9'!!A_)MVL[?%-B&,D@@60`?%ZVF;T< 30 MHLQH+72BZ!;%F7<M<>!=10+.-DBX).%XL/H$(C=HNL2DDV0F58MCKJO$8RX; 31 MZ\Y<="ASR(-SHY5EKG+F0BAM,1:X4!<C+P97QIP'D\2':!2QY;7S7CL%CK5P 32 MG7MA0O%<!I).EFTV:2-WTL9N/]6;65^T+E#1/-J68"K6KZ%9(%JFMO-I7S]` 33 MNU1/=//_#\VUK3S#M#IHS[)L@!/A-26&<2%B>R&]')X=/H2?1F9@,Q<BJN\? 34 MM1+UO'/-.;YRTG67!'+PMASW^B1ISK=UN8>1S07_`48;VC!>;!@/6GK\W8T_ 35 2JE].4%2F/UG_`<J,H^FM#P`` 2 M'XL("(HA$5P"`T5X86UP;&5?,E\V7S$U+G)E<P"55UMOXD84?O>O&*WZ8&`, 3 MGO'XMJFI$I)(*RU4VE3[$M$L"Z:U1#`R#G%;];_WS'@\<[R!;4N(/9?OW,^< 4 M,SS\<OMA00AA4_+QPPUY5Q_K\:[X^N[*>=`[?$I@\:G8%[4[N'+DFTRGY*Y9 5 M/1]V^1-_BIY8.-[GK^-CO:H-63`E9BS&Y%"5:Y(W=;[?Y)M%63VO=O?P=)]7 6 M=54T9#XPX'!,_C*3:`P/4NSK4[XFIXR-Q_NJ?#VZ\X%5,,&8UZP#C!!XM%^7 7 MNQX5\Q65%K_(UN5^O:K=;97GS^7F99>['>V`8C*NR!997:WVQT-YS%T0G%=5 8 MOG'MTF(P0"0"2YIEQY>O,'87]$1/"-5:.LMVQ;9V9_2-(C/)DTPF]>\YV'K* 9 MJV/>\2RW9&;X)%C:+9;V:J7QUOK;<V;<(MUY:^ZN.-;D4Y[-Z*W=:LVJ\OJE 10 MVKN?<D0$IOQM)K'-`PZZE8>Z*/<N"'JX023IE%3%_C?R*?.IVPPH>&!SL/N! 11 MK]+S76M6/T$#9B4$H&^748_A$KX9HX117_T95*!41Q^/4^\-2GR+(CZ%+Z<, 12 MH\+S*(E#J.@2"G#6$N2K(#&6+(PEG!+U!5T-+GW#F8&"$J<L[W#"?V.SQGGJ 13 M:7#L/(Y]B^-GY';,"#,V":@#\S:I%V^36AZ4X7RXL'`QA5(!N:C.JA=,@"4' 14 MV:$:)52J(^#IA!-X>1'\!W+H,;G/),J1.DCC24"U_D3J!!\GD%0,V"2Q&DD\ 15 MC^%!6ED2)M^:2BB[C&ZA#8^(3'BNL[G7#)%IH<U;@2(J(*+J('W,SA7":T25 16 M6JK0'VN'?'QD2\#XM)=#RD+P3L!#L^,E$RZ".*0VA**_TN,"OHN`V(LG+/!] 17 M1#0121SV%@(\)PZ+D@F+N&++I`I4@N1*,PK:'1F8GB[\F[GTO`@[E)21^A3" 18 M`RKU1*O]9J1U2!5WK(O'X[2SV^.3%%Y]KU@N9]AJ_QBOHYH2<AL!+B/0"$\T 19 MP2AL.+Q'@DH)NG1@M\I/XW%Z8<M727IQRV^KS/DMV+3JH48;"I.5GYFL&F+9 20 M-3:9/?"E\Z$=]<=F9A,QA(SO^'')CRTS!>)+BXF0_%BG^'VV7:WKLBK^S)77 21 M'J&&8+[)E-Q?.<#IO0-&/4F^K!WQ9=;PD9X$,/&X`XL*)PL1-SS0(8E\?<$X 22 ME+L_?M[>[3=E=[&XH7*-',S](F+H?A&I*@:Q)851+A+=VD;?)5"CBE0A-R=_ 23 M7>;;[=$]T-.J<AEJG%&"<'>/FR5\,U0C-A8:^P@ZT]!KY;'AG44I3;=EY189 24 MORI^U*I!U2A&(V-<K'0WYL5=V[G+[H8WEE>BEV?9;'3]6/0E)4H?T\`3)5BW 25 M^9E5.Q&HRR>H-":V-#YD*"!S>M^FSJ\<<8EMAC&6'>N-^S#\S!`@Z1H"[,N6 26 MD,9Q1%G`TE`6[9CY,66"RZ;@B"1)9`6*>9A01VUU)5(?)+F&*GJ"<B@%L\_I 27 M&Z"\31G2EI_1-N566VDE="XANR>(]U0'=>2IEDK!2M`-X,FL4BDZT*D]T#?= 28 M208_4.!./R,WIN#_35ZK3`7[?I(3>2T,24,BTN8<T4=BT"+@LE=6I%RO7^2M 29 M#_*=P/1K#AF6DY;KKMCGP/D]^:)9?S'BT)E/X<P#@Y=U[LZ'4C?I%1DK4$4= 30 M;-]1I]HW!!!11,`U`7]+H`J`I4LQG2;#5"V.^;Y1COEL;"_>ZA)R`[7.GF?F 31 MFX#)U&8L]*'KQ4$"L4HX#R>I@&Q3N1.TZT&[!)%SY#X/HI3*<Q=J.MV4V:3- 32 MS$F;F_U*CHNZNIA`OPIHVV"IVK^$9J&Z$%%]9]7[E]`^M0O=^O]#<^O)`'G5 33 M9N5)=P6('[RL6R$?>PD['YX\/H1?/#AMF0]Y="$N\7^(BS#QN1R-4`_\[\2@ 34 J\R3['D;?&CC]%P^J-_);@OP&=W7Y4UK^3GXY0K^X^L'Y!VV`RI:`#P`` 36 35 ` 37 36 end -
Tst/Buch/Example_2_6_15.stat
rfe8998f r311eaa 1 1 >> tst_memory_0 :: 1 044976067:2003021115:2-0-4:ix86-Linux:nepomuck:199584 1292524760:3120- 13145 :3-1-2:ix86-Linux:mamawutz:2303002 1 >> tst_memory_1 :: 1 044976067:2003021115:2-0-4:ix86-Linux:nepomuck:707464 1292524760:3120- 13145 :3-1-2:ix86-Linux:mamawutz:6673363 1 >> tst_memory_2 :: 1 044976067:2003021115:2-0-4:ix86-Linux:nepomuck:707464 1292524760:3120- 13145 :3-1-2:ix86-Linux:mamawutz:7001204 1 >> tst_timer_1 :: 1 044976067:2003021115:2-0-4:ix86-Linux:nepomuck:6 1292524760:3120- 13145 :3-1-2:ix86-Linux:mamawutz:121 1 >> tst_memory_0 :: 1544626571:4113, 64 bit:4.1.1:x86_64-Linux:nepomuck:187832 2 1 >> tst_memory_1 :: 1544626571:4113, 64 bit:4.1.1:x86_64-Linux:nepomuck:2199552 3 1 >> tst_memory_2 :: 1544626571:4113, 64 bit:4.1.1:x86_64-Linux:nepomuck:2215936 4 1 >> tst_timer_1 :: 1544626571:4113, 64 bit:4.1.1:x86_64-Linux:nepomuck:4 -
Tst/Old/err4.res.gz.uu
rfe8998f r311eaa 1 1 begin 640 err4.res.gz 2 M'XL(" `5A15@``V5R<C0N<F5S`-U96Y.;QA)^]Z^82O(`!DG,A=MN:4^5?:IL3 M5 V6=I#9/<3D.B]":&('"Q=&0RG]/]X`&9&FUVD0YQXD>0,Q\?9GN;WH:Z>;[4 M _[YZ30BA5V0VBW*2E&51DF))G&DP#2-BI'F=E%42UR3-2?P^*HEC/KGII=@45 M I(P/9=)465(.XWQ*RC2_(^7<L8V-+>W6M(W8SM;FI<:(*_(1U(*UCP8UYV\V6 M TI+,WMCT[8!Q1QB&&&:U@)E(V]G!>2,<1UQK(V07Y%^15;%HLH1<S]&DC3IM7 M %!@PP8"IYE6],*Y'D^$5C%X^N:[>T+?S-ZA^P^1DPUIK(UM+HF>LG6PDFTAN8 M 3S;<4M,M/KY%*::DI#_ATFLM+ETUU0H0]0`O16NQ#0PPU-%RN,+<IG41Q"$X9 M K9C(UD4D8*P>T[H6*)J`,+,0ASYQ\(+!-(!02&D>J93>A(&,Q;30!)5;K:?<10 MY ,I-9=>SV%:Y@M@;I5NI1GT6N*.>$(((7#=:MA!H]5/@(<[R3@D8:X4R)#I#11 M $A>,"Q03=-WJM"M5$%:,G_K>F>Q##"CE-$;=:KOPNKTZKARTE$JNO&(V:E#212 M F)R6*;S7X8>4`6L<-`I(!?![P&Z.$8)N6+V:H$-Q7+BEO.3=[%A5"*!N10`!13 M #T!+"T]JCCHPJ9Q#9VWEA.QFD&>2*[.@'MF!B,G&DG:/0$Z-V*[&,('#;E)#14 M &.K=S;-E-74TY5_/[Y(<MH.--]'=W('_%&J$K@;&=66_AKEW?V8O;!6R*_(A15 M S3)2#C8XUJ')7_IH76)Z3TUK\D6R3/-D0?)HE52D:.IU4Y,EH&ZS(OY`GNM216 M 1MU1*=O8QF)M/Q^%!`H/.#^;D;A(ELLT3I.\KB[(=]_A6-ZL;A-E^&-45N2"17 M 4!SM/YTA4`'C1;E(E)'%>H08/A>]G_#9'%#!QBJ>:]_\_>@&9XQN>%]TXS*J18 M WE^017)G.";Y-:J(CK<.*W-0FAC/IM=16:?Y,$&/Q9L!8]9%)LER&`+&H*DE19 M H"94CXJ]Q3/W?(MGWM'%*R;=K=:SE`?>;/(-&Y;GW[?NX-"1N1@=F"S<KGUN20 M 0`$P?Z14SW'8Q%5S6]7&$H+&0$A2:C$FJ0-71X86Y7`++)<%CO0M*OQ`8'4/21 M 72^`^BP8$XX4_9U;+*">(YE%*?.$M)@C`FV*[D66L[\>61U:S@^&]A8[D;@H22 M 2Z@])HGR13<<]Q'7<>2B"_#+Z<UT&-2;>/`9=FZZ2**,I/-1''U%IC))C-1423 M ^WJ1KI*\2HN<&-$2.6R2.7'4C,(-PVI\JP<V&D@J)0,I.61PU62U&M98`;E+24 M YX[V0=`C/JS+XN>ILL7&/FR'85Q;$VSP@>M!/G)A@(HS)E"X!Q.XERGA=9EZ25 M 7M3U;5,-XVJ+Z*=`H>JDJDD5E^FZ*]-04*'DKE9`!(T,QW*NLTVY4!O*H-,I26 M =4Q;XI?0M%N\!Z9I+]8Z\BY$OA2GEW/FGZ&>0R,*%X87CA>!%Q<O'EY\O`1X27 M "?$"2R`2122*2!21*")11**(1!&)(A)%6@2W"&X1W"*X17"+X!;!+8!//E5<28 M 8!4NORZ-4M@L`!H!]C\J(7V`6(`'*L:IC/*[A$"@(5(*U5,BCAO8R`M\H\`C29 M -X&,)J0SD,%>`B,7Y*==*S]I!_BV_H@A<8J_Y`SD=8^3=Z9.LKY?T(QU[V&R30 M N\-D]S"3D0E@YA,RNSMD]H#,T'E!F0CUFCT@*\0'DU/5\TZ+D5IT.#`\AHC+31 M )_J9GRM*WN'.*AX??XM$42`O\NJ7)BH3'15/A9B\N'ZA1[RA/,/,TZ<$R($-32 M @QHC1C\W:/"WM?L5F:NCTF[EL&Q\AXL@,ANR(O.?H[BX-5Z-HA)B>:V-U9:Y33 M O:.";`C?=L)&I\!\%&N]$%C;J]9T]9V]X]*GY\J#SX[G(5T2.!EBLH[*:`6-34 M.TDK$JE0ZUCZ_ --L^&+OL/3=PVWN#S_,H*UP^,'JR,]0'(DD[<FER;^G&?_,35 M O`3RJJ34>@0*PV_Z`39^EE8UN&=$63;P-H#&>'B`K/VN'Z#ZU4;9]0I?[KLZ36 M _L#;&E'Z;5*E;=*_DI0/"#D@]!27@6`H7P^"^\*$\/0$W5C;0@375?VNJJ.Z37 M J=XM4]B'1W0#Y<4T3WZ=(EZ'`HBZ&[U_U>K^$00/AO=.=:L'U@;G*GQ!.)RE38 M 45,74*[3F%1=)2_6-?3*U;9/3(NF4@6MVDJ'W<OGBV]G+V_T&&RO3M!0K.F539 M 7.!1]'V49NK^OBR:N_?;TRDA315!?P.[>;7620KAU.T50>)OZC*JDSLY[..040 M 7YUL:*3@`:-"*\V+PV;=T\T>-X4D[%Y4%>G@?7/40H?^GZ#H__1GD3`X5R#"41 M HXFFCG/^1%.'/I!HZK#SK(\Z_-/.A3KB:OSCS)!WZMS3(7P&/X11Q_L[$N$_42 M D/U'T.QTH^%#V:>/(-U14W3O9QZ*/]?VV3<<.S)W&8"_W!YF@!&9_W\24'$D43 M, (_-`W6/)Y\>8]RCC?D/)OT8UTY*=KB7;.8,R?;WDLWHO67>_RS2S8Y5P<=F44 M @/'CZ6;GY!9S'THW.X%=QTWL_3-`V;E:,\JZUBPNFFP!;_\U6:35.HODEA!+45 M <$7UZ!4QJBQ9UA\O+FY4TVN8V[=2RKL.[9MG0X=&^>X_`\!&U$*R.9VQR^P-46 F_M,+WS0:"/#UJV?D"VBZIUEZ^\7ET'T;U+S\ZLD?>+*E/OH>````2 M'XL("$<A$5P"`V5R<C0N<F5S`-U96Y.;1A9^]Z_HRNX#&"31%VXSI=DJ>ZL< 3 M5^TX24V>XO(ZC$!C8@1:+HZ:K?WO.:=!#;(TTB0FN\GJ`8;N[USZG*]/'YB[ 4 M[__^^@TAA-Z0Q2+*25*614F*-7'FP3R,B)'F=5)6R:HF:4Y6'Z*2..:SNUZ* 5 MS4'*^%@F394EY3#.YZ1,\P=2+AW;V-G2;DW;6-G9UKS6&'%#/H%:L/;)H.;R 6 M[4Y:DMD[F[X;,.X(PQ##K!8P,VD[!SAOA..(:VV$'(+\&[(IXB9+R.T23=JH 7 MTT:!`1,,F&I9U;%Q.YH,;V#T^MEM]9:^6[Y%]3LF9SO66CO96A(]8^UL)]E, 8 M<GNVXY::;O'Q'4HQ)27]&9=>:W'IJJE6@*@'>"E:B^U@@*&.EL,5YG:MBR`. 9 MP6G%3+8N(@%C]9C6M4#1#(29A3CTB8,7#*8!A$)*\TBE]&8,9"RFA6:HW&H] 10 MY297;BJ[GL7VRA7$WBG=2C7JL\`=]8001."ZT;*%0*N?`@]QEG=*P%@KE"'1 11 M&9*X8%R@F*'K5J==J8*P8OS4WYW)/L2`4DYCU*VV"Z_;J^/*04NIY,HK9J,& 12 M)8W):9G">QU^2!FPQD&C@%0`OP<<YA@AZ(;5JPDZ%,>%6\I+WLV.584`ZE8$ 13 M$/``M+3PI.:H`Y/*.7365D[(;@9Y)KDR"^J1'8B8[2QI]PCDU(CM:@P3..PF 14 M-82A/MP\>U931U/^S?(AR6$[V'@3W<T=^$^A1NAJ8-Q6]AN8>_];]L)>(;LA 15 M'],L(^5@@V,=FGW13^L2\T=J6I/'R3K-DYCDT2:I2-'4VZ8F:T#=9\7J(WFI 16 M2QEU1Z5L9QOQUGXY"@D4'G!^L2"K(EFOTU6:Y'5U1;[[#L?R9G.?*,.?HK(B 17 M5X3B:/_K#($*&"_*.%%&XNT(,?RN>C_AMSNA@HU5O-2^^<?1#2:,;OA8=%=E 18 M5'VX(G'R8#@F^3FJB(ZW#BMS4)H8+^:W45FG^3!!S\6;`6.V12;)>A@"QJ"I 19 M-:!F5(^*H\4S=[K%,^_LXA63'C;;1<H#;S'[A@W+\Q];=W#JR(Q'!R8+]VM? 20 M&E``S']2JN<X;.*JN:]J8PU!8R`D*;48D]2!JR-#BW*X!9;+`D?Z%A5^(+"Z 21 MAZX70'T6C`E'BO[.+190SY',HI1Y0EK,$8$V18\BR]F71U:'EO.3H;W'3F15 22 ME"74'I-$>=P-K_J(ZSART07XZ_G=?!C4FWCP&79N&B=11M+E*(Z^(E.9)$9J 23 MJGT=IYLDK](B)T:T1@Z;9$D<-:-PP[`:W^N!C0:22LE`2@X9W#19K88U5D#N 24 MTJ6C?1#TC`_;LOAIKFRQL0_[81C7U@0;?.!ZD(]<&*!BP@0*]V0"CS(EO"Y3 25 M+XNZOF^J85QM$?T4*%2=5#6I5F6Z[<HT%%0HN9L-$$$CP[&<Z^Q3+M2&,NA\ 26 M3AW3EOA':-HMW@/3M..MCKP+D2_%T\LY\R>HY]"(PH7AA>-%X,7%BX<7'R\! 27 M7D*\P!*(1!&)(A)%)(I(%)$H(E%$HHA$D1;!+8);!+<(;A'<(KA%<`O@)Y\J 28 M+K`*EU^71BEL%@"-`/LWE9`^0"S``Q7C5$;Y0T(@T!`IA>HIL5HUL)%C?*/` 29 M(S>!C":D,Y#!7@(C5^3'0RL_:@?XOOZ((7&*OV0"\KKGR;M0)UG?+VC&NH\P 30 MV3U@LGN:R<@$,/,9F=T#,GM`9NB\H$R$>LT>D!7B@\FIZF6GQ4@M.AP8'D/$ 31 M]3/]S*>*DB?.1DFM*TX4!?(BK_[51&6BH^*I$)-7MZ_TB#>49YAY_IP`.;!A 32 M4&/$Z.<&#?Z^=K\F2W54VJT<EHWO<!%$9D<V9/E3M"KNC=>CJ(187FMCLV=N 33 M[Z@@.\+WG;#1*3!_%6N]$%C;J]9T]9VCX]*G4^7!9^?SD*X)G`PKLHW*:`.- 34 M.TDK$JE0ZUCZ_/-L^.+HL/3=TVWN#S\LH*UP^,GJR"<HCD22]LFER??^%%X" 35 M>552:CT"A>'?^@$V?I96-;AG1%DV\#:`QGAX@*S]1S]`]:N-LNL5_D+._N!M 36 MC2C]-JG2-NE?2<H+0@X(/<=E(!C*UT5P7Y@0GCY!-]:V$,%U5;^OZJANJO?K 37 M%/;A&=U`>3'/DY_GB->A`*(>1N__:G5_"H('PWNGNM4#:X.I"E\0#F=IU-0% 38 ME.MT1:JNDA?;&GKE:M\GID53J8)6[:7#[N7SU;>+K^_T&&RO3M!0K.F57.%1 39 M]'V49NK^H2R:AP_[TRDA315!?P.[>;/520KAU.T50>+OZC*JDP<Y[..0WSS9 40 MT$C!!:-"*\V+TV;=FXG6AR3L7E05Z>!]<]1"A_YOH.A_];-(&$P5B/!LHJGC 41 M3)]HZM`+B:8.FV9]U.&?=R[4$3?CCS-#WJGC_F$_A%''^ST2X5_(?O![&`TO 42 M99\Z$V6?'GWFH?BYML^^X=B1><@`_')[F@%&9/[O24#%F<#\VCQ0]WSRJ3>E 43 M,?]BTH/+YLZ;"(^2S9PAV?Y1LAE]M,S[?XAT,S9A!A@_GVXV);>8>RG=S/O" 44 M=#/_.-U3M6:4=:W9JFBR&-[^:Q*GU3:+Y)X0:W!%]>@5,:HL6=>?KJ[N5--K 45 MF/NW4LJ[#NV;%T.'1OGA?P:`C:B%9$NZ8-?96_Q/+_RET4"`?[Q^0;Z"IGN> 46 6I?=?70_=MT'-Z[\^^P5XLJ4^^AX````` 47 47 ` 48 48 end -
Tst/Old/err4.stat
rfe8998f r311eaa 1 1 >> tst_memory_0 :: 1 480941829:4100, 64 bit:4.1.0:x86_64-Linux:nepomuck:1054562 1 >> tst_memory_1 :: 1 480941829:4100, 64 bit:4.1.0:x86_64-Linux:nepomuck:23592963 1 >> tst_memory_2 :: 1 480941829:4100, 64 bit:4.1.0:x86_64-Linux:nepomuck:23756804 1 >> tst_timer_1 :: 1 480941829:4100, 64 bit:4.1.0:x86_64-Linux:nepomuck:11 1 >> tst_memory_0 :: 1544626503:4113, 64 bit:4.1.1:x86_64-Linux:nepomuck:80528 2 1 >> tst_memory_1 :: 1544626503:4113, 64 bit:4.1.1:x86_64-Linux:nepomuck:2277376 3 1 >> tst_memory_2 :: 1544626503:4113, 64 bit:4.1.1:x86_64-Linux:nepomuck:2286496 4 1 >> tst_timer_1 :: 1544626503:4113, 64 bit:4.1.1:x86_64-Linux:nepomuck:1 -
doc/NEWS.texi
rfe8998f r311eaa 40 40 Changes in the kernel/build system: 41 41 @itemize 42 @item improved heuristic for @code{det} (@nref{det}) 42 43 @item improved reading of long polynomials 43 44 @item improved groebner bases over Z coefficients -
gfanlib/gfanlib_mixedvolume.cpp
rfe8998f r311eaa 5 5 * Author: anders 6 6 */ 7 7 #include <stddef.h> 8 8 #include "gfanlib_mixedvolume.h" 9 9 -
gfanlib/gfanlib_polyhedralfan.cpp
rfe8998f r311eaa 6 6 */ 7 7 8 #include <stddef.h> 8 9 #include <sstream> 9 10 #include "gfanlib_polyhedralfan.h" -
gfanlib/gfanlib_polymakefile.cpp
rfe8998f r311eaa 5 5 * Author: anders 6 6 */ 7 7 #include <stddef.h> 8 8 #include "gfanlib_polymakefile.h" 9 9 -
gfanlib/gfanlib_symmetriccomplex.cpp
rfe8998f r311eaa 6 6 */ 7 7 8 #include <stddef.h> 8 9 #include "gfanlib_symmetriccomplex.h" 9 10 #include "gfanlib_polymakefile.h" -
gfanlib/gfanlib_symmetry.cpp
rfe8998f r311eaa 5 5 * Author: anders 6 6 */ 7 7 #include <stddef.h> 8 8 #include "gfanlib_symmetry.h" 9 9 #include <map> -
gfanlib/gfanlib_traversal.cpp
rfe8998f r311eaa 1 #include <stddef.h> 1 2 #include "gfanlib_traversal.h" 2 3 #include "gfanlib_symmetry.h" -
gfanlib/gfanlib_zcone.cpp
rfe8998f r311eaa 5 5 * Author: anders 6 6 */ 7 7 #include <stddef.h> 8 8 #include "gfanlib_zcone.h" 9 9 -
gfanlib/gfanlib_zfan.cpp
rfe8998f r311eaa 5 5 * Author: anders 6 6 */ 7 7 #include <stddef.h> 8 8 #include "gfanlib_zfan.h" 9 9 #include "gfanlib_polymakefile.h" -
libpolys/polys/matpol.cc
rfe8998f r311eaa 23 23 #include "matpol.h" 24 24 #include "prCopy.h" 25 #include "clapsing.h" 25 26 26 27 #include "sparsmat.h" … … 2029 2030 2030 2031 // mu-Matrix 2031 static void mu(matrix A, matrix &X, const ring R)2032 static matrix mu(matrix A, const ring R) 2032 2033 { 2033 2034 int n=MATROWS(A); … … 2044 2045 2045 2046 // X als n*n Null-Matrix initalisieren 2046 X=mpNew(n,n);2047 matrix X=mpNew(n,n); 2047 2048 2048 2049 // Diagonaleintraege von X berrechnen … … 2053 2054 sum=p_Sub(sum,p_Copy(MATELEM0(A,i,i),R),R); 2054 2055 } 2056 p_Delete(&sum,R); 2055 2057 2056 2058 // Eintraege aus dem oberen Dreieck von A nach X uebertragen 2057 for (int i = 0; i < n; i++)2059 for (int i = n-1; i >=0; i--) 2058 2060 { 2059 2061 for (int j = i+1; j < n; j++) … … 2062 2064 } 2063 2065 } 2066 return X; 2064 2067 } 2065 2068 … … 2080 2083 2081 2084 //speichere A ab: 2082 matrix B=mp_Copy(A,R); 2083 A=mp_Copy(A,R); 2085 matrix workA=mp_Copy(A,R); 2084 2086 2085 2087 // berechen X = mu(X)*A 2086 2088 matrix X; 2087 for (int i = 0; i < n-1; i++)2088 { 2089 mu(A,X,R);2090 id_Delete((ideal*)& A,R);2091 A=mp_Mult(X,B,R);2089 for (int i = n-1; i >0; i--) 2090 { 2091 X=mu(workA,R); 2092 id_Delete((ideal*)&workA,R); 2093 workA=mp_Mult(X,A,R); 2092 2094 id_Delete((ideal*)&X,R); 2093 2095 } … … 2097 2099 if (n%2 == 0) 2098 2100 { 2099 res=p_Neg(MATELEM0( A,0,0),R);2101 res=p_Neg(MATELEM0(workA,0,0),R); 2100 2102 } 2101 2103 else 2102 2104 { 2103 res=MATELEM0( A,0,0);2104 } 2105 MATELEM0( A,0,0)=NULL;2106 id_Delete((ideal*)& A,R);2105 res=MATELEM0(workA,0,0); 2106 } 2107 MATELEM0(workA,0,0)=NULL; 2108 id_Delete((ideal*)&workA,R); 2107 2109 return res; 2108 2110 } 2109 2111 2112 DetVariant mp_GetAlgorithmDet(matrix m, const ring r) 2113 { 2114 if (MATROWS(m)+2*r->N>20+5*rField_is_Zp(r)) return DetMu; 2115 if (MATROWS(m)<10+5*rField_is_Zp(r)) return DetSBareiss; 2116 BOOLEAN isConst=TRUE; 2117 int s=0; 2118 for(int i=MATCOLS(m)*MATROWS(m)-1;i>=0;i--) 2119 { 2120 poly p=m->m[i]; 2121 if (p!=NULL) 2122 { 2123 if(!p_IsConstant(p,r)) isConst=FALSE; 2124 s++; 2125 } 2126 } 2127 if (isConst && rField_is_Q(r)) return DetFactory; 2128 if (s*2<MATCOLS(m)*MATROWS(m)) // few entries 2129 return DetSBareiss; 2130 return DetMu; 2131 } 2132 DetVariant mp_GetAlgorithmDet(const char *s) 2133 { 2134 if (strcmp(s,"Bareiss")==0) return DetBareiss; 2135 if (strcmp(s,"SBareiss")==0) return DetSBareiss; 2136 if (strcmp(s,"Mu")==0) return DetMu; 2137 if (strcmp(s,"Factory")==0) return DetFactory; 2138 WarnS("unknown method for det"); 2139 return DetDefault; 2140 } 2141 2142 2143 poly mp_Det(matrix a, const ring r, DetVariant d/*=DetDefault*/) 2144 { 2145 if ((MATCOLS(a)==0) 2146 && (MATROWS(a)==0)) 2147 return p_One(r); 2148 if (d==DetDefault) d=mp_GetAlgorithmDet(a,r); 2149 switch (d) 2150 { 2151 case DetBareiss: return mp_DetBareiss(a,r); 2152 case DetMu: return mp_DetMu(a,r); 2153 case DetFactory: return singclap_det(a,r); 2154 case DetSBareiss: 2155 { 2156 ideal I=id_Matrix2Module(mp_Copy(a, r),r); 2157 poly p=sm_CallDet(I, r); 2158 id_Delete(&I, r); 2159 return p; 2160 } 2161 default: 2162 WerrorS("unknown algorith for det"); 2163 } 2164 } 2165 2166 poly sm_Det(ideal a, const ring r, DetVariant d/*=DetDefault*/) 2167 { 2168 if ((MATCOLS(a)==0) 2169 && (MATROWS(a)==0)) 2170 return p_One(r); 2171 if (d==DetDefault) d=mp_GetAlgorithmDet((matrix)a,r); 2172 if (d==DetSBareiss) return sm_CallDet(a,r); 2173 matrix m=id_Module2Matrix(id_Copy(a,r),r); 2174 poly p=mp_Det(m,r,d); 2175 id_Delete((ideal *)&m,r); 2176 return p; 2177 } -
libpolys/polys/matpol.h
rfe8998f r311eaa 32 32 }; 33 33 34 enum DetVariant 35 { 36 DetDefault=0, 37 DetBareiss, 38 DetSBareiss, 39 DetMu, 40 DetFactory 41 }; 42 34 43 typedef ip_smatrix * matrix; 35 44 … … 59 68 // BOOLEAN mpKoszul(leftv res,leftv b/*in*/, leftv c/*ip*/, leftv id=NULL); 60 69 70 poly mp_Det(matrix a, const ring r, DetVariant d=DetDefault); 61 71 poly mp_DetBareiss (matrix a, const ring r); 62 72 poly mp_DetMu(matrix A, const ring R); … … 106 116 BOOLEAN sm_Equal(ideal a, ideal b, const ring R); 107 117 ideal sm_Tensor(ideal A, ideal B, const ring r); 118 poly sm_Det(ideal I, const ring, DetVariant d=DetDefault); 119 DetVariant mp_GetAlgorithmDet(matrix m, const ring r); 120 DetVariant mp_GetAlgorithmDet(const char *s); 108 121 109 122 #define SMATELEM(A,i,j,R) p_Vec2Poly(A->m[j],i+1,R) -
libpolys/polys/sparsmat.cc
rfe8998f r311eaa 295 295 } 296 296 297 /*2298 * Bareiss or Chinese remainder ?299 * I is dXd300 * sw = TRUE -> I Matrix301 * FALSE -> I Module302 * return True -> change Type303 * FALSE -> same Type304 */305 BOOLEAN sm_CheckDet(ideal I, int d, BOOLEAN sw, const ring r)306 {307 int s,t,i;308 poly p;309 310 if (d>100)311 return TRUE;312 if (!rField_is_Q(r))313 return TRUE;314 s = t = 0;315 // now: field is Q, n<=100316 for(i=IDELEMS(I)-1;i>=0;i--)317 {318 p=I->m[i];319 if (p!=NULL)320 {321 if(!p_IsConstant(p,r))322 return TRUE;323 s++;324 t+=n_Size(pGetCoeff(p),r->cf);325 }326 }327 s*=15;328 if (t>s)329 return FALSE;// few large constanst entries330 else331 return TRUE; //many small entries332 }333 334 297 /* ----------------- basics (used from 'C') ------------------ */ 335 298 /*2 -
libpolys/polys/sparsmat.h
rfe8998f r311eaa 32 32 void sm_KillModifiedRing(ring r); 33 33 long sm_ExpBound(ideal, int, int, int, const ring); 34 BOOLEAN sm_CheckDet(ideal, int, BOOLEAN, const ring);35 34 #endif
Note: See TracChangeset
for help on using the changeset viewer.