Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

implement arithmetic product of lazy symmetric functions #34423

Closed
mantepse opened this issue Aug 24, 2022 · 48 comments
Closed

implement arithmetic product of lazy symmetric functions #34423

mantepse opened this issue Aug 24, 2022 · 48 comments

Comments

@mantepse
Copy link
Collaborator

We implement the arithmetic product of lazy symmetric functions. This operation already exists for symmetric functions.

Depends on #34422

CC: @tscrim

Component: combinatorics

Keywords: LazyPowerSeries

Author: Martin Rubey

Branch/Commit: ebcf5c3

Reviewer: Travis Scrimshaw

Issue created by migration from https://trac.sagemath.org/ticket/34423

@mantepse mantepse added this to the sage-9.7 milestone Aug 24, 2022
@mantepse
Copy link
Collaborator Author

@mantepse
Copy link
Collaborator Author

Dependencies: 34422

@mantepse
Copy link
Collaborator Author

Author: Martin Rubey

@mantepse
Copy link
Collaborator Author

Last 10 new commits:

4e03feeremove unused local variable
e780472Addressing the linter complaint.
d5b86a8implement revert, improve plethysm
6eebb35do not assume that the approximate valuation will not change over time
4098dbfadd derivative for LazyLaurentSeries
55761b8better derivative for LazyLaurentSeries
50ce450derivative for LazyTaylorSeries
10cfc11derivative for LazySymmetricFunctions
7be0b86functorial composition for LazySymmetricFunctions
c755d71implement arithmetic product for LazySymmetricFunction

@mantepse
Copy link
Collaborator Author

Commit: c755d71

@mantepse
Copy link
Collaborator Author

Changed keywords from none to LazyPowerSeries

@mantepse
Copy link
Collaborator Author

Changed dependencies from 34422 to #34422

@mantepse

This comment has been minimized.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Aug 24, 2022

Changed commit from c755d71 to b469431

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Aug 24, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

18429efdo not use change_ring, because it is brittle, and take care of zero coefficients which are not symmetric functions
481d78dMerge branch 'u/mantepse/implement_functorial_composition_of_lazy_symmetric_functiosn' of trac.sagemath.org:sage into t/34423/implement_arithmetic_product_of_lazy_symmetric_functions
b469431do not use change_ring, because it is brittle

@tscrim
Copy link
Collaborator

tscrim commented Aug 25, 2022

comment:6

As on the other tickets, it would be good to have an explanation not in terms of species since not everyone who uses this code will know about species.

Some other details:

  • Only use \ instead of \\ since you marked the docstring as r""" (i.e., "raw" in Python-lingo).
  • Move the reference to the master reference file and follow the naming conventions there.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Aug 30, 2022

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

6745cf1Some last details and optimizations to Stream_plethysm.
3d6d39ffix typo in comment
ee35418Merge branch 'public/rings/lazy_series_revert-34383' of trac.sagemath.org:sage into t/34413/implement_derivatives_of_lazy_series
34bb6eaMerge branch 'u/mantepse/implement_derivatives_of_lazy_series' of trac.sagemath.org:sage into t/34422/implement_functorial_composition_of_lazy_symmetric_functiosn
e383a01add (currently failing) sanity check for functorial composition
29c6545return correct partition in g_cycle_type, add documentation
dafdcb4fix doctests
9124987Merge branch 'public/rings/lazy_series_revert-34383' of trac.sagemath.org:sage into t/34413/implement_derivatives_of_lazy_series
8af380bMerge branch 'u/mantepse/implement_derivatives_of_lazy_series' of trac.sagemath.org:sage into t/34422/implement_functorial_composition_of_lazy_symmetric_functiosn
870ab88Merge branch 'u/mantepse/implement_functorial_composition_of_lazy_symmetric_functiosn' of trac.sagemath.org:sage into t/34423/implement_arithmetic_product_of_lazy_symmetric_functions

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Aug 30, 2022

Changed commit from b469431 to 870ab88

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Aug 30, 2022

Changed commit from 870ab88 to 90a34ae

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Aug 30, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

90a34aemove reference, polish docstring

@mantepse
Copy link
Collaborator Author

comment:9

Done.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Aug 30, 2022

Changed commit from 90a34ae to 192c6ff

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Aug 30, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

192c6fftypo in reference

@tscrim
Copy link
Collaborator

tscrim commented Aug 31, 2022

comment:11

The doc is still described in terms of species rather than symmetric functions. The species can remain, but I think we should have it also explained as a symmetric function operation. Or is this unreasonable?

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 2, 2022

Changed commit from 192c6ff to 83e7dd3

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 2, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

610078fadd doctests
731072aremove unnecessary code leftover from merge, and remove unneccesary import detected by pyflakes
5666eaeMerge branch 'public/rings/lazy_series_revert-34383' of trac.sagemath.org:sage into t/34413/implement_derivatives_of_lazy_series
e1e7f0dMerge branch 'u/mantepse/implement_derivatives_of_lazy_series' of trac.sagemath.org:sage into t/34473/remove_rings_from_streams
6010361remove ring argument from Stream_map_coefficient and Stream_function
aa15394Merge branch 'u/mantepse/remove_rings_from_streams' of trac.sagemath.org:sage into t/34422/implement_functorial_composition_of_lazy_symmetric_functiosn
760372aaddress reviewer's comments
8ca3624polish functorial composition
b2ef1e4allow SymmetricFunctions as arguments of functorial composition
83e7dd3Merge branch 'u/mantepse/implement_functorial_composition_of_lazy_symmetric_functiosn' of trac.sagemath.org:sage into t/34423/implement_arithmetic_product_of_lazy_symmetric_functions

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 2, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

d22f87aadapt code after merge

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 2, 2022

Changed commit from 83e7dd3 to d22f87a

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 2, 2022

Changed commit from d22f87a to f2a3caf

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 2, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

f2a3cafreimplement arithmetic_product by using the symmetric function version (which is more robust

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 3, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

f88a5c8fix arithmetic product with 0 and finite support

@mantepse
Copy link
Collaborator Author

mantepse commented Sep 3, 2022

comment:22

I love pyflakes.

@tscrim
Copy link
Collaborator

tscrim commented Sep 3, 2022

Reviewer: Travis Scrimshaw

@tscrim
Copy link
Collaborator

tscrim commented Sep 3, 2022

comment:23

Can you add an example with a finite series with a constant term of, say, 3 (maybe also for g as well)? Once that is done, you can set a positive review on my behalf (assuming tests pass on the file for you).

@mantepse
Copy link
Collaborator Author

mantepse commented Sep 8, 2022

comment:24

Hi Travis!

I am not sure whether such a test is a good idea, since the arithmetic product does not really make sense for symmetric functions with constant term. On the other hand, I am guessing that setting the arithmetic product of 1 and p_mu to p_0 for any mu is the only sensible extension.

So, do you want to see

sage: L(s(3)).arithmetic_product(5*p[2,1])
15*s[]

or did I misunderstand?

@tscrim
Copy link
Collaborator

tscrim commented Sep 8, 2022

comment:25

Yes, that’s what I am thinking, or something like L(s(3) + p[1]). I was looking at the code and wanting to check to make sure the code handles this case correctly. If it doesn’t make sense to have a constant term (or you are unsure), then we should either raise some kind of error or issue a warning.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 9, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

0de1c13add a warning and an example for the arithmetic product with a constant term

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 9, 2022

Changed commit from f88a5c8 to 0de1c13

@mantepse
Copy link
Collaborator Author

mantepse commented Sep 9, 2022

comment:27

Done! I looked at the reference and the formula again, and decided to add an explanation in the docstring, and an example that can be checked without pencil and paper.

@tscrim
Copy link
Collaborator

tscrim commented Sep 9, 2022

comment:28

Thanks. Just add some whitespace here and you can set a positive review:

         Check that the arithmetic product of symmetric functions with
-constant a term works as advertised::
+        constant a term works as advertised::

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 9, 2022

Changed commit from 0de1c13 to 8e5de35

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 9, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

8e5de35add missing whitespace in docstring

@mantepse
Copy link
Collaborator Author

mantepse commented Sep 9, 2022

comment:30

Thank you!

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 26, 2022

Changed commit from 8e5de35 to ebcf5c3

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 26, 2022

Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. New commits:

1729827Merge branch 'u/mantepse/implement_derivatives_of_lazy_series' of https://github.com/sagemath/sagetrac-mirror into u/tscrim/derivatives_lazy_series-34413
5d76825Merge branch 'u/chapoton/34494' of https://github.com/sagemath/sagetrac-mirror into u/tscrim/derivatives_lazy_series-34413
97df300Updating sf/sfa.py doctest due to #34494.
1388b8aMerge branch 'u/chapoton/34494' of https://github.com/sagemath/sagetrac-mirror into public/rings/lazy_series_revert-34383
7bfe5f7Merge branch 'public/rings/lazy_series_revert-34383' of https://github.com/sagemath/sagetrac-mirror into public/rings/lazy_series_revert-34383
2039990Updating doctest due to changes from #34494.
cdea820Merge branch 'public/rings/lazy_series_revert-34383' of https://github.com/sagemath/sagetrac-mirror into u/tscrim/derivatives_lazy_series-34413
b7f04edMerge branch 'develop' of trac.sagemath.org:sage into t/34413/derivatives_lazy_series-34413
2325826Merge branch 'u/mantepse/derivatives_lazy_series-34413' of trac.sagemath.org:sage into t/34422/implement_functorial_composition_of_lazy_symmetric_functiosn
ebcf5c3Merge branch 'u/mantepse/implement_functorial_composition_of_lazy_symmetric_functiosn' of trac.sagemath.org:sage into t/34423/implement_arithmetic_product_of_lazy_symmetric_functions

@mantepse
Copy link
Collaborator Author

comment:33

trivial (autopmatic) merge, necessary to make the patchbots happy.

@vbraun
Copy link
Member

vbraun commented Sep 29, 2022

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants