  
  [1X12 [33X[0;0YPoincare series[133X[101X
  
  
  [1X12.1 [33X[0;0Y [133X[101X
  
  [1X12.1-1 EfficientNormalSubgroups[101X
  
  [33X[1;0Y[29X[2XEfficientNormalSubgroups[102X( [3XG[103X ) [32X function[133X
  [33X[1;0Y[29X[2XEfficientNormalSubgroups[102X( [3XG[103X, [3Xk[103X ) [32X function[133X
  
  [33X[0;0YInputs  a  prime-power  group  [22XG[122X  and, optionally, a positive integer [22Xk[122X. The
  default  is [22Xk=4[122X. The function returns a list of normal subgroups [22XN[122X in [22XG[122X such
  that  the  Poincare  series  for [22XG[122X equals the Poincare series for the direct
  product [22X(N × (G/N))[122X up to degree [22Xk[122X.[133X
  
  [33X[0;0Y[12XExamples:[112X 1 ([7X../tutorial/chap11.html[107X) [133X
  
  [1X12.1-2 ExpansionOfRationalFunction[101X
  
  [33X[1;0Y[29X[2XExpansionOfRationalFunction[102X( [3Xf[103X, [3Xn[103X ) [32X function[133X
  
  [33X[0;0YInputs a positive integer [22Xn[122X and a rational function [22Xf(x)=p(x)/q(x)[122X where the
  degree  of  the polynomial [22Xp(x)[122X is less than that of [22Xq(x)[122X. It returns a list
  [22X[a_0  ,  a_1  ,  a_2  , a_3 , ... ,a_n][122X of the first [22Xn+1[122X coefficients of the
  infinite expansion[133X
  
  [33X[0;0Y[22Xf(x) = a_0 + a_1x + a_2x^2 + a_3x^3 + ...[122X .[133X
  
  [33X[0;0Y[12XExamples:[112X 1 ([7X../tutorial/chap11.html[107X) [133X
  
  [1X12.1-3 PoincareSeries[101X
  
  [33X[1;0Y[29X[2XPoincareSeries[102X( [3XG[103X, [3Xn[103X ) [32X function[133X
  [33X[1;0Y[29X[2XPoincareSeries[102X( [3XR[103X, [3Xn[103X ) [32X function[133X
  [33X[1;0Y[29X[2XPoincareSeries[102X( [3XL[103X, [3Xn[103X ) [32X function[133X
  [33X[1;0Y[29X[2XPoincareSeries[102X( [3XG[103X ) [32X function[133X
  
  [33X[0;0YInputs a finite [22Xp[122X-group [22XG[122X and a positive integer [22Xn[122X. It returns a quotient of
  polynomials  [22Xf(x)=P(x)/Q(x)[122X  whose coefficient of [22Xx^k[122X equals the rank of the
  vector space [22XH_k(G,Z_p)[122X for all [22Xk[122X in the range [22Xk=1[122X to [22Xk=n[122X. (The second input
  variable  can  be  omitted,  in  which  case  the function tries to choose a
  "reasonable" value for [22Xn[122X. For [22X2[122X-groups the function PoincareSeriesLHS(G) can
  be used to produce an [22Xf(x)[122X that is correct in all degrees.)[133X
  
  [33X[0;0YIn  place of the group [22XG[122X the function can also input (at least [22Xn[122X terms of) a
  minimal mod [22Xp[122X resolution [22XR[122X for [22XG[122X.[133X
  
  [33X[0;0YAlternatively, the first input variable can be a list [22XL[122X of integers. In this
  case  the  coefficient  of  [22Xx^k[122X  in [22Xf(x)[122X is equal to the [22X(k+1)[122Xst term in the
  list.[133X
  
  [33X[0;0Y[12XExamples:[112X   1  ([7X../tutorial/chap7.html[107X) ,  2  ([7X../tutorial/chap11.html[107X) ,  3
  ([7X../www/SideLinks/About/aboutArithmetic.html[107X) ,                            4
  ([7X../www/SideLinks/About/aboutModPRings.html[107X) ,                             5
  ([7X../www/SideLinks/About/aboutPoincareSeries.html[107X) ,                        6
  ([7X../www/SideLinks/About/aboutPoincareSeriesII.html[107X) ,                      7
  ([7X../www/SideLinks/About/aboutIntro.html[107X) ,                                 8
  ([7X../www/SideLinks/About/aboutTorAndExt.html[107X) [133X
  
  [1X12.1-4 PoincareSeriesPrimePart[101X
  
  [33X[1;0Y[29X[2XPoincareSeriesPrimePart[102X( [3XG[103X, [3Xp[103X, [3Xn[103X ) [32X function[133X
  
  [33X[0;0YInputs  a  finite group [22XG[122X, a prime [22Xp[122X, and a positive integer [22Xn[122X. It returns a
  quotient  of  polynomials [22Xf(x)=P(x)/Q(x)[122X whose coefficient of [22Xx^k[122X equals the
  rank of the vector space [22XH_k(G,Z_p)[122X for all [22Xk[122X in the range [22Xk=1[122X to [22Xk=n[122X.[133X
  
  [33X[0;0YThe efficiency of this function needs to be improved.[133X
  
  [33X[0;0Y[12XExamples:[112X             1             ([7X../tutorial/chap7.html[107X) ,             2
  ([7X../www/SideLinks/About/aboutIntro.html[107X) [133X
  
  [1X12.1-5 PoincareSeriesLHS[101X
  
  [33X[1;0Y[29X[2XPoincareSeriesLHS[102X [32X global variable[133X
  
  [33X[0;0YInputs   a   finite   [22X2[122X-group  [22XG[122X  and  returns  a  quotient  of  polynomials
  [22Xf(x)=P(x)/Q(x)[122X  whose coefficient of [22Xx^k[122X equals the rank of the vector space
  [22XH_k(G,Z_2)[122X for all [22Xk[122X.[133X
  
  [33X[0;0YThis  function  was  written  by  [12XPaul Smith[112X. It use the Singular system for
  commutative algebra.[133X
  
  [33X[0;0Y[12XExamples:[112X[133X
  
  [1X12.1-6 Prank[101X
  
  [33X[1;0Y[29X[2XPrank[102X( [3XG[103X ) [32X function[133X
  
  [33X[0;0YInputs  a  [22Xp[122X-group  [22XG[122X and returns the rank of the largest elementary abelian
  subgroup.[133X
  
  [33X[0;0Y[12XExamples:[112X[133X
  
