Re: [sage-devel] Power series do not distinguish between different precisions!

2020-01-16 Thread Sebastian Oehms
> > ... This model has the advantage that (sqrt(1+t)^2 -1)/t == 1 returns > true, as one would expect mathematically. (insisting equality up to the > default precision would have to lead to false, because the arithmetic on > the LHS leads to precision loss) > Your example is convincing and I'

Re: [sage-devel] Power series do not distinguish between different precisions!

2020-01-15 Thread Nils Bruin
On Wednesday, January 15, 2020 at 12:45:10 PM UTC-8, Sebastian Oehms wrote: > > My expectation is that two power series are considered to be equal if > there polynomials agree, but also their individual precisions as long as > one of them is below the default precision of the ring. Accordingly

Re: [sage-devel] Power series do not distinguish between different precisions!

2020-01-15 Thread Sebastian Oehms
> > For example, suppose you want to do some long computation and determine > whether you get 1 at the end. At the end of your computation, you find the > answer 1 + O(t^33). I think it's more useful to say that this is equal to > 1 than that it's not. > Sorry, that I was not clear enought a

Re: [sage-devel] Power series do not distinguish between different precisions!

2020-01-15 Thread Nils Bruin
On Wednesday, January 15, 2020 at 7:09:29 AM UTC-8, David Roe wrote: > > > I'm not sure what kind of equality you would imagine, but if we defined > equality by something like "equal absolute precision and equal value modulo > that absolute precision" then you no longer have additive and > multi

Re: [sage-devel] Power series do not distinguish between different precisions!

2020-01-15 Thread David Roe
We only store power series and p-adics to finite precision, so it's impossible to tell whether the mathematical objects underlying two elements in Sage are actually equal. In practice, the goal of a p-adic or power series computation is to determine some result approximately, since that's all that

[sage-devel] Power series do not distinguish between different precisions!

2020-01-15 Thread Sebastian Oehms
Dear all, obviously Sage does not distinguish between precisions of power series: sage: R. = PowerSeriesRing(ZZ) sage: O(t).is_zero() True sage: O(t) == O(t**2) True Similarly for p-adics: sage: O(3).is_zero() True sage: O(3) == O(3^2) True sage: This seems to be explicitly intended: def