def _element_constructor_(self, x) : """ TESTS:: sage: from psage.modform.fourier_expansion_framework.monoidpowerseries.monoidpowerseries_basicmonoids import * sage: from psage.modform.fourier_expansion_framework.monoidpowerseries.monoidpowerseries_ring import MonoidPowerSeriesRing_generic sage: mps = MonoidPowerSeriesRing_generic(QQ, NNMonoid(False)) sage: h = mps(1) # indirect doctest sage: h = mps(mps.monoid().zero_element()) sage: h = mps.zero_element() sage: K.<rho> = CyclotomicField(6) sage: mps = MonoidPowerSeriesRing_generic(K, NNMonoid(False)) sage: h = mps(rho) sage: h = mps(1) """ if isinstance(x, int) : x = Integer(x) if isinstance(x, Element) : P = x.parent() if P is self.coefficient_domain() : return self._element_class( self, {self.monoid().zero_element(): x}, self.monoid().filter_all() ) elif self.coefficient_domain().has_coerce_map_from(P) : return self._element_class( self, {self.monoid().zero_element(): self.coefficient_domain()(x)}, self.monoid().filter_all() ) elif P is self.monoid() : return self._element_class( self, {x: self.base_ring().one_element}, self.monoid().filter_all() ) return MonoidPowerSeriesAmbient_abstract._element_constructor_(self, x)
def _element_constructor_(self, x) : r""" TESTS:: sage: from psage.modform.fourier_expansion_framework.monoidpowerseries.monoidpowerseries_basicmonoids import * sage: from psage.modform.fourier_expansion_framework.monoidpowerseries.monoidpowerseries_ring import MonoidPowerSeriesRing_generic sage: mps = MonoidPowerSeriesRing_generic(QQ, NNMonoid(False)) sage: h = mps(1) # indirect doctest sage: h = mps(mps.monoid().zero_element()) sage: h = mps.zero_element() sage: K.<rho> = CyclotomicField(6) sage: mps = MonoidPowerSeriesRing_generic(K, NNMonoid(False)) sage: h = mps(rho) sage: h = mps(1) """ if isinstance(x, int) : x = Integer(x) if isinstance(x, Element) : P = x.parent() if P is self.coefficient_domain() : return self._element_class( self, {self.monoid().zero_element(): x}, self.monoid().filter_all() ) elif self.coefficient_domain().has_coerce_map_from(P) : return self._element_class( self, {self.monoid().zero_element(): self.coefficient_domain()(x)}, self.monoid().filter_all() ) elif P is self.monoid() : return self._element_class( self, {x: self.base_ring().one_element}, self.monoid().filter_all() ) return MonoidPowerSeriesAmbient_abstract._element_constructor_(self, x)
def _element_constructor_(self, x) : """ TESTS:: sage: from psage.modform.fourier_expansion_framework.monoidpowerseries.monoidpowerseries_basicmonoids import * sage: from psage.modform.fourier_expansion_framework.monoidpowerseries.monoidpowerseries_module import MonoidPowerSeriesModule_generic sage: mps = MonoidPowerSeriesModule_generic(FreeModule(QQ,2), NNMonoid(False)) sage: h = mps(0) # indirect doctest sage: h = mps(int(0)) # indirect doctest """ if isinstance(x, int) and x == 0 : return self._element_class( self, dict(), self.monoid().filter_all() ) if isinstance(x, Element) and x.is_zero() : P = x.parent() if self.base_ring().base_ring().has_coerce_map_from(P) : return self._element_class( self, dict(), self.monoid().filter_all() ) return MonoidPowerSeriesAmbient_abstract._element_constructor_(self, x)
def _element_constructor_(self, x) : r""" TESTS:: sage: from psage.modform.fourier_expansion_framework.monoidpowerseries.monoidpowerseries_basicmonoids import * sage: from psage.modform.fourier_expansion_framework.monoidpowerseries.monoidpowerseries_module import MonoidPowerSeriesModule_generic sage: mps = MonoidPowerSeriesModule_generic(FreeModule(QQ,2), NNMonoid(False)) sage: h = mps(0) # indirect doctest sage: h = mps(int(0)) # indirect doctest """ if isinstance(x, int) and x == 0 : return self._element_class( self, dict(), self.monoid().filter_all() ) if isinstance(x, Element) and x.is_zero() : P = x.parent() if self.base_ring().base_ring().has_coerce_map_from(P) : return self._element_class( self, dict(), self.monoid().filter_all() ) return MonoidPowerSeriesAmbient_abstract._element_constructor_(self, x)