本文整理汇总了Python中sage.rings.polynomial.laurent_polynomial_ring.LaurentPolynomialRing.sum方法的典型用法代码示例。如果您正苦于以下问题:Python LaurentPolynomialRing.sum方法的具体用法?Python LaurentPolynomialRing.sum怎么用?Python LaurentPolynomialRing.sum使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sage.rings.polynomial.laurent_polynomial_ring.LaurentPolynomialRing
的用法示例。
在下文中一共展示了LaurentPolynomialRing.sum方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: q_int
# 需要导入模块: from sage.rings.polynomial.laurent_polynomial_ring import LaurentPolynomialRing [as 别名]
# 或者: from sage.rings.polynomial.laurent_polynomial_ring.LaurentPolynomialRing import sum [as 别名]
def q_int(n, q=None):
r"""
Return the `q`-analog of the nonnegative integer `n`.
The `q`-analog of the nonnegative integer `n` is given by
.. MATH::
[n]_q = \frac{q^n - q^{-n}}{q - q^{-1}}
= q^{n-1} + q^{n-3} + \cdots + q^{-n+3} + q^{-n+1}.
INPUT:
- ``n`` -- the nonnegative integer `n` defined above
- ``q`` -- (default: `q \in \ZZ[q, q^{-1}]`) the parameter `q`
(should be invertible)
If ``q`` is unspecified, then it defaults to using the generator `q`
for a Laurent polynomial ring over the integers.
.. NOTE::
This is not the "usual" `q`-analog of `n` (or `q`-integer) but
a variant useful for quantum groups. For the version used in
combinatorics, see :mod:`sage.combinat.q_analogues`.
EXAMPLES::
sage: from sage.algebras.quantum_groups.q_numbers import q_int
sage: q_int(2)
q^-1 + q
sage: q_int(3)
q^-2 + 1 + q^2
sage: q_int(5)
q^-4 + q^-2 + 1 + q^2 + q^4
sage: q_int(5, 1)
5
TESTS::
sage: from sage.algebras.quantum_groups.q_numbers import q_int
sage: q_int(1)
1
sage: q_int(0)
0
"""
if q is None:
R = LaurentPolynomialRing(ZZ, 'q')
q = R.gen()
else:
R = q.parent()
if n == 0:
return R.zero()
return R.sum(q**(n - 2 * i - 1) for i in range(n))