#17715: AsymptoticTerm
-------------------------------------+-------------------------------------
Reporter: behackl | Owner:
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-6.9
Component: asymptotic | Resolution:
expansions | Merged in:
Keywords: asymptotics, | Reviewers: Daniel Krenn, Clemens
gsoc15 | Heuberger
Authors: Benjamin Hackl | Work issues:
Report Upstream: N/A | Commit:
Branch: | abc6a16771d308e14b167110de8980de680ca53b
u/behackl/asy/asymptoticTerm | Stopgaps:
Dependencies: #17600, #18930, |
#19237 |
-------------------------------------+-------------------------------------
Changes (by behackl):
* status: needs_info => needs_review
* commit: b22a24b09af01226e100bdb69847495e806e1c53 =>
abc6a16771d308e14b167110de8980de680ca53b
* branch: u/cheuberg/asy/asymptoticTerm => u/behackl/asy/asymptoticTerm
Comment:
Replying to [comment:40 cheuberg]:
> Replying to [comment:38 behackl]:
> > In fact, we only need the comparison of the underlying growth. I've
deleted `TermWithCoefficient._le_` and rewritten the documentation of
`GenericTerm.__le__` and `GenericTerm._le_` in order to reflect that.
> >
> > As this is--as you already said--a rather technical class, I think
that it can be justified if `<=` only compares growth. However, if we
follow this approach, then `x <= 2*x` and `2*x <= x` would both yield
`True`, but `x == 2*x` would be false (because as far as I can remember,
we need `==` to actually check if the coefficients are the same too,
somewhere in the `AsymptoticRing`). Any thoughts?
>
> First, I do not know what the next tickets want to see, whether `<=` has
to be antisymmetric or not.
> On the other hand, elements of equal growth will always absorb each
other and not be elements of the same asymptotic expansion, anyway?
>
I agree, once again. We should preserve that `<=` is antisymmetric, and I
propose the following:
- For terms **without** coefficient, we simply compare the growth with
`<=` like we do now.
- For terms **with** coefficient, we check if `term1.growth < term.growth`
(still like above), and in case we have `term1.growth == term2.growth`, we
return `True` if and only if the terms are the same, i.e. if the
coefficient coincides. Otherwise, the terms are incomparable.
I've added this, as well as a short note in the module description how
terms are compared.
> Second, where is the implementation of equality of growth terms?
>
> If in doubt, I would say that `x` and `2x` are incomparable in order to
save antisymmetry.
Ah! These did not exist on this ticket -- I have added them as well, as
they logically belong here.
>
> Apart from that, I reviewed your changes, added a few reviewer commits
(please cross-review).
I reviewed your changes, and added the points from above (please cross-
review again `:-)`).
Benjamin
----
Last 10 new commits:
||[http://git.sagemath.org/sage.git/commit/?id=ad0754cf8c845f51bed2827f5641ce5b01d61c4b
ad0754c]||{{{shifted documentation of absorption towards module
description}}}||
||[http://git.sagemath.org/sage.git/commit/?id=0eaa472e85359ade739d459b7f294d35b7a977bf
0eaa472]||{{{remark regarding keyword check in GenericTerm.absorb}}}||
||[http://git.sagemath.org/sage.git/commit/?id=67a73cabf434ab2d6642db0b9e5e8eeec9767feb
67a73ca]||{{{improved some doctests}}}||
||[http://git.sagemath.org/sage.git/commit/?id=fe906ca483c84201b91a98dd41629c091c3ba46c
fe906ca]||{{{reintroduce _le_ for TermWithCoefficient}}}||
||[http://git.sagemath.org/sage.git/commit/?id=5cb54ae52b4c2f2b267e92265706c21eae43785c
5cb54ae]||{{{equality comparison for terms}}}||
||[http://git.sagemath.org/sage.git/commit/?id=14e3e6333f2977678b4911dddc2dc47da85534a7
14e3e63]||{{{improve documentation: information on comparison}}}||
||[http://git.sagemath.org/sage.git/commit/?id=ce7e2a379d666b4ff51fd5ed5de84229a27e861d
ce7e2a3]||{{{Trac #17715: avoid the use of repr in doctest}}}||
||[http://git.sagemath.org/sage.git/commit/?id=7b29b28553796c9ca51f31ce74e66cef489d42e6
7b29b28]||{{{Trac #17715: do not include "the" in internal link texts}}}||
||[http://git.sagemath.org/sage.git/commit/?id=b22a24b09af01226e100bdb69847495e806e1c53
b22a24b]||{{{Trac #17715: Fix ReSt error}}}||
||[http://git.sagemath.org/sage.git/commit/?id=abc6a16771d308e14b167110de8980de680ca53b
abc6a16]||{{{Merge branch 'u/cheuberg/asy/asymptoticTerm' of
git://trac.sagemath.org/sage into asy/asymptoticTerm}}}||
--
Ticket URL: <http://trac.sagemath.org/ticket/17715#comment:41>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.