
D.6.11.9 displayMultsequence
Procedure from library hnoether.lib (see hnoether_lib).
 Usage:
 displayMultsequence(INPUT); INPUT list or poly
 Assume:
INPUT is a bivariate polynomial, or the output of
develop(f) , resp. of extdevelop(develop(f),n) , or (one
entry of) the list of HN data computed by hnexpansion(f[,"ess"]) ,
or the output of hnexpansion(f) .
 Return:
 nothing
 Display:
 the sequence of multiplicities:
  if INPUT=develop(f) or INPUT=extdevelop(develop(f),n) or INPUT=hne[i] :
a , b , c , ....... , 1
 if INPUT=f or INPUT=hnexpansion(f) or INPUT=hne :
[(a_1, .... , b_1 , .... , c_1)],
[(a_2, ... ), ... , (... , c_2)],
........................................ ,
[(a_n),(b_n), ....., (c_n)]
with:
a_1 , ... , a_n the sequence of multiplicities of the 1st branch,
[...] the multiplicities of the jth transform of all branches,
(...) indicating branches meeting in an infinitely near point.

 Note:
 The Same restrictions as in
multsequence apply for the input.
In case the HamburgerNoether expansion of the curve f is needed
for other purposes as well it is better to calculate this first
with the aid of hnexpansion and use it as input instead of
the polynomial itself.
Example:
 LIB "hnoether.lib";
ring r=0,(x,y),dp;
// Example 1: Input = output of develop
displayMultsequence(develop(x3y5));
==> The sequence of multiplicities is 3,2,1,1
// Example 2: Input = bivariate polynomial
displayMultsequence((x6y10)*(x+y2y3)*(x+y2+y3));
==> [(3,3,1,1)],
==> [(2,2,1,1)],
==> [(1,1),(1,1)],
==> [(1,1),(1),(1)],
==> [(1),(1),(1),(1)]
 See also:
develop;
hnexpansion;
multsequence;
separateHNE.
