code: def lagmul(c1, c2):
      """
      Multiply one Laguerre series by another.
  
      Returns the product of two Laguerre series `c1` * `c2`.  The arguments
      are sequences of coefficients, from lowest order "term" to highest,
      e.g., [1,2,3] represents the series ``P_0 + 2*P_1 + 3*P_2``.
  
      Parameters
      ----------
      c1, c2 : array_like
          1-D arrays of Laguerre series coefficients ordered from low to
          high.
  
      Returns
      -------
      out : ndarray
          Of Laguerre series coefficients representing their product.
  
      See Also
      --------
      lagadd, lagsub, lagmulx, lagdiv, lagpow
  
      Notes
      -----
      In general, the (polynomial) product of two C-series results in terms
      that are not in the Laguerre polynomial basis set.  Thus, to express
      the product as a Laguerre series, it is necessary to "reproject" the
      product onto said basis set, which may produce "unintuitive" (but
      correct) results; see Examples section below.
  
      Examples
      --------
      >>> from numpy.polynomial.laguerre import lagmul
      >>> lagmul([1, 2, 3], [0, 1, 2])
      array([  8., -13.,  38., -51.,  36.])
  
      """
      # s1, s2 are trimmed copies
      [c1, c2] = pu.as_series([c1, c2])
  
      if len(c1) > len(c2):
          c = c2
          xs = c1
      else:
          c = c1
          xs = c2
  
      if len(c) == 1:
          c0 = c[0] * xs
          c1 = 0
      elif len(c) == 2:
          c0 = c[0] * xs
          c1 = c[1] * xs
      else:
          nd = len(c)
          c0 = c[-2] * xs
          c1 = c[-1] * xs
          for i in range(3, len(c) + 1):
              tmp = c0
              nd = nd - 1
              c0 = lagsub(c[-i] * xs, (c1 * (nd - 1)) / nd)
              c1 = lagadd(
                  tmp, lagsub((2 * nd - 1) * c1, lagmulx(c1)) / nd
              )
      return lagadd(c0, lagsub(c1, lagmulx(c1)))
  
imports: import numpy
  import numpy.linalg
  from numpy.lib.array_utils import normalize_axis_index
  from .None import polyutils
  from ._polybase import ABCPolyBase
label_desc: Use image node_id 8 for calling a global function with example usage: lagmul(c1, c2) and returns: lagadd