#14846: CycleIndexSeries derivative, integral, exponential methods are not
combinatorial
-------------------------------------+-------------------------------------
Reporter: agd | Owner: agd
Type: enhancement | Status: needs_info
Priority: major | Milestone: sage-6.2
Component: combinatorics | Resolution:
Keywords: LazyPowerSeries, | Merged in:
species | Reviewers: Martin Rubey
Authors: Andrew Gainer- | Work issues: documentation
Dewar | Commit:
Report Upstream: N/A | 334c0956250038eae2d6efc915231e650b13be79
Branch: u/agd/cis/deriv | Stopgaps:
Dependencies: 15673 |
-------------------------------------+-------------------------------------
Changes (by agd):
* dependencies: => 15673
Comment:
Replying to [comment:21 mhansen]:
> One (minor) issue is the removal of combinatorial_logarithm.py which
might need to be deprecated.
Ah, yes, this is an important point. I sometimes forget that other people
might have used my code… =D
> I've also done a "rebase" of this on top of #15673 which makes the code
a little bit cleaner. This is in branch "u/mhansen/ticket/14846" .
Ideally, I'd prefer to have #15673 go in first since the rebase/merge of
this ticket is easier than the other way around.
I don't yet understand everything that's happening with #15673, but I'm
starting to take a look at it. I'm definitely open to the idea,
though—better series code will make all our work easier! I've taken a look
at your rebased version of this, and have a few thoughts up-front:
* In the docstring for the deprecated `CombinatorialLogarithmSeries()`,
you point the reader to `CycleIndexSeriesRing(R).exponential()`, but in
fact this should be to `CycleIndexSeriesRing(R).omega()`.
* Relatedly, I'd argue that the `CycleIndexSeriesRing(R).omega()` and
`CycleIndexSeriesRing(R).exponential()` methods should instead be named
`logarithm_series()` and `exponential_series()`. In the first place, the Ω
notation is not totally standard (it's used by Labelle, but other authors
have called this virtual species "Con" or other things); in the second, I
think it's conceptually important to emphasize that these objects are
//series// and not //operations//, since the operations are implemented as
`CycleIndexSeries().exponential()` and `CycleIndexSeries().logarithm()`
respectively. (Of course, the documentation should mention the
relationship between the two!)
* `CycleIndexSeriesRing.LogarithmStream` appears to be internal, so the
docstring of `CycleIndexSeries.logarithm()` should refer instead to
`CycleIndexSeriesRing.logarithm_series`.
I've updated the ticket branch to use your code with these changes. I've
also set a dependency on #15673. (Evidently, I bungled the ticket
modifications a bit, but I think it's all sorted now.)
----
Last 10 new commits:
||[http://git.sagemath.org/sage.git/commit/?id=fea9eb0e8a57196b269c96d39c52bfacd6838a00
fea9eb0]||{{{#15248: Convert LazyPowerSeriesRing (and friends) to new
coercion model}}}||
||[http://git.sagemath.org/sage.git/commit/?id=652520034250fb22edfb96ce02f8adc943de36a7
6525200]||{{{Remove dependence on sage.combinat.species.stream}}}||
||[http://git.sagemath.org/sage.git/commit/?id=ed19baa2e208d71a90dc9d10348fa9dc325ccc3c
ed19baa]||{{{Add doctests to new_stream.py}}}||
||[http://git.sagemath.org/sage.git/commit/?id=654a89d5c25bd8c8cab03d2517a448ac799dc71f
654a89d]||{{{Add doctests to generating_series.py}}}||
||[http://git.sagemath.org/sage.git/commit/?id=bd7527ccaf2e7dd57b38f7a32165783c5a97545b
bd7527c]||{{{More work on doctests for series_stream.py}}}||
||[http://git.sagemath.org/sage.git/commit/?id=a696708e181c85bdfa355eaa3a253d4d2679c00b
a696708]||{{{Add doctests for #15249, #15248, #10084, #10085, #10086,
#13433, #14685.}}}||
||[http://git.sagemath.org/sage.git/commit/?id=f4157f7f221f244b1faa2a0d07ddd8cd85bb7007
f4157f7]||{{{Remove dead code in
GenericCombinatorialSpecies._series_helper}}}||
||[http://git.sagemath.org/sage.git/commit/?id=137301be8493425622c6eda916d7ca83d9f94fbf
137301b]||{{{#14846: CycleIndexSeries derivative, integral, exponential
methods are not combinatorial}}}||
||[http://git.sagemath.org/sage.git/commit/?id=2d3b46683d9cd567a75a9c737f248fd95b69354b
2d3b466]||{{{Merge remote-tracking branch 'origin/u/mhansen/ticket/14846'
into cis-deriv}}}||
||[http://git.sagemath.org/sage.git/commit/?id=4efe9b08164bf688e15ef3729858a4eb2996e7c2
4efe9b0]||{{{Rename CycleIndexSeriesRing.omega() to logarithm_series}}}||
--
Ticket URL: <http://trac.sagemath.org/ticket/14846#comment:25>
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/groups/opt_out.