@@ -814,6 +814,19 @@ def some_elements(self):
814
814
"""
815
815
return self ([]), self ([2 ]), self ([3 ]), self ([4 ]), self ((1 , 2 ))
816
816
817
+ def an_element (self ):
818
+ r"""
819
+ Return an element of the algebra.
820
+
821
+ EXAMPLES::
822
+
823
+ sage: M = Multizetas(QQ)
824
+ sage: M.an_element()
825
+ ζ() + ζ(1,2) + 1/2*ζ(5)
826
+ """
827
+ cf = self .base_ring ().an_element ()
828
+ return self ([]) + self ([1 , 2 ]) + cf * self ([5 ])
829
+
817
830
def product_on_basis (self , w1 , w2 ):
818
831
r"""
819
832
Compute the product of two monomials.
@@ -1790,6 +1803,29 @@ def D_on_basis(self, k, w):
1790
1803
coprod += left .regularise ().tensor (right .regularise ())
1791
1804
return coprod
1792
1805
1806
+ def D (self , k ):
1807
+ """
1808
+ Return the operator `D_k`.
1809
+
1810
+ INPUT:
1811
+
1812
+ - ``k`` -- an odd integer, at least 3
1813
+
1814
+ EXAMPLES::
1815
+
1816
+ sage: from sage.modular.multiple_zeta import Multizetas_iterated
1817
+ sage: M = Multizetas_iterated(QQ)
1818
+ sage: D3 = M.D(3)
1819
+ sage: elt = M((1,0,1,0,0)) + 2 * M((1,1,0,0,1,0))
1820
+ sage: D3(elt)
1821
+ -6*I(100) # I(110) + 3*I(100) # I(10)
1822
+ """
1823
+ def map_on_basis (elt ):
1824
+ return self .D_on_basis (k , elt )
1825
+ cod = Multizetas_iterated (self .base_ring ()).tensor_square ()
1826
+ return self .module_morphism (map_on_basis , position = 0 ,
1827
+ codomain = cod )
1828
+
1793
1829
@cached_method
1794
1830
def phi_extended (self , w ):
1795
1831
r"""
0 commit comments