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 quasi-symmetric functions #11929

Closed
BruceWestbury opened this issue Oct 17, 2011 · 18 comments
Closed

Implement quasi-symmetric functions #11929

BruceWestbury opened this issue Oct 17, 2011 · 18 comments

Comments

@BruceWestbury
Copy link

This feature is being implemented as part of #8899. There is a patch up on that ticket ready for review right now.

Implement quasisymmetric functions as a graded Hopf algebra with basis. The preferred basis is the basis of fundamental quasisymmetric functions. This should also implement the inclusion of the Hopf algebra of symmetric functions (as a homomorphism) and the principle
specialisation (as a homomorphism).

Depends on #8899

CC: @sagetrac-sage-combinat @sagetrac-chrisjamesberg @zabrocki

Component: combinatorics

Keywords: Hopf algebras, sd40

Reviewer: Jason Bandlow, Chris Berg, Franco Saliola, Nicolas M. Thiéry

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

@jbandlow
Copy link

@jbandlow
Copy link

comment:1

I've attached the patch that I've been using from the sage-combinat queue, modified to apply cleanly to sage-4.7.1. There are obviously documentation issues, which I will begin working on. Comments welcome!

@jbandlow
Copy link

comment:2

Recording todo's for myself here:

  1. Doc and tests throughout
  2. The partial morphism from qsym --> sym is implemented with .to_symmetric_function(). The reverse morphism should be implemented in SF.
  3. Look at how principle specializations are implemented in SF, and be implement here in a consistent way.
  4. Homomorphisms to/from polynomial rings should also be implemented.
  5. The combinatorial rule for multiplying fundamentals is not implemented, and should be.

@jbandlow
Copy link

comment:3

Replying to @jbandlow:
6. Learn how to use WikiFormatting for lists...

@BruceWestbury
Copy link
Author

comment:4

Replying to @jbandlow:

I've attached the patch that I've been using from the sage-combinat queue, modified to apply cleanly to sage-4.7.1. There are obviously documentation issues, which I will begin working on. Comments welcome!

That looks great! I have read the code but not tried to run it. I will need to see if I can follow the instructions in the on-line documentation. I have some comments:

  • You have declared quasisymmetric functions as Hopf algebra but I can only see algebra operations. (This is sufficient for my purposes.)
  • You have implemented the inclusion of symmetric functions by writing the monomial functions in terms of the monomial functions. It is also straightforward to implement this by writing the elementary and homogeneous functions in terms of the fundamental functions. I don't know what, if anything, is gained by implementing this.
  • Do you mean to allow the base ring to be a non-commutative ring?

I asked for the principal specialisation but did not give the whole story. Let f be of degree r and ps(f) the principle specialisation. Then what I am actually interested in is (1-q)...(1-qr)ps(f) which is a polynomial in q. This is straightforward to implement using the major_index method of Composition. I have got in the habit of calling this the fake degree polynomial.

Mathematically, this is a graded algebra homomorphism to the quantum divided power algebra. This is a graded Z[q]-algebra. As a graded Z[q]-module it is Z[q,x] where x has degree one. The multiplication is xr.xs = [r+s,r]_q xr+s (where [r+s,r]_q is the quantum binomial coefficient).

I can't see a coproduct on the quantum divided power algebra which makes it a bialgebra.

I have not been able to find divided power algebras (quantum or otherwise) in sage.
Did I miss something? and, if not, should these be implemented?

@jbandlow
Copy link

comment:5

Replying to @BruceWestbury:

That looks great! I have read the code but not tried to run it. I will need to see if I can follow the instructions in the on-line documentation. I have some comments:

It turns out you won't be able to run it, as it depends on some category code which is also only available on the combinat queue for the time being. I'll check with Nicolas about how to proceed on this.

  • You have declared quasisymmetric functions as Hopf algebra but I can only see algebra operations. (This is sufficient for my purposes.)

Good catch! It might not be a bad idea for me to implement the basic Hopf operations here as well; it shouldn't be too difficult, I think.

  • You have implemented the inclusion of symmetric functions by writing the monomial functions in terms of the monomial functions. It is also straightforward to implement this by writing the elementary and homogeneous functions in terms of the fundamental functions. I don't know what, if anything, is gained by implementing this.

Implementing the various homomorphisms could definitely improve performance in some cases, but I'm less inclined to go down that road at the moment.

  • Do you mean to allow the base ring to be a non-commutative ring?

Another good catch. I definitely haven't thought through the issues of that. Perhaps I should restrict to commutative rings.

I asked for the principal specialisation but did not give the whole story. Let f be of degree r and ps(f) the principle specialisation. Then what I am actually interested in is (1-q)...(1-qr)ps(f) which is a polynomial in q. This is straightforward to implement using the major_index method of Composition. I have got in the habit of calling this the fake degree polynomial.

Mathematically, this is a graded algebra homomorphism to the quantum divided power algebra. This is a graded Z[q]-algebra. As a graded Z[q]-module it is Z[q,x] where x has degree one. The multiplication is xr.xs = [r+s,r]_q xr+s (where [r+s,r]_q is the quantum binomial coefficient).

I can't see a coproduct on the quantum divided power algebra which makes it a bialgebra.

I have not been able to find divided power algebras (quantum or otherwise) in sage.
Did I miss something? and, if not, should these be implemented?

I'm not aware of the divided power algebras in sage. You may be able to get information or ideas on implementation from the sage-algebra list. From this description, it doesn't look like a quick and limited implementation would be so hard. (Also, did you mean to have an x somewhere in your definition of the homomorphism Qsym-->QuantumDividedPowerAlgebra ? If not, I'm confused as to how the homomorphism is graded.)

@BruceWestbury
Copy link
Author

comment:6

Replying to @jbandlow:

I'm not aware of the divided power algebras in sage. You may be able to get information or ideas on implementation from the sage-algebra list. From this description, it doesn't look like a quick and limited implementation would be so hard. (Also, did you mean to have an x somewhere in your definition of the homomorphism Qsym-->QuantumDividedPowerAlgebra ? If not, I'm confused as to how the homomorphism is graded.)

I have put a brief description of the QuantumDividedPowerAlgebra on the Wiki page. I have also made an attempt at implementing DividedPowerAlgebra. This did not succeed. I have added this as an attachment to the wiki page. I am sure this is not correct protocol but I did not have any better ideas.

@jdemeyer
Copy link

jdemeyer commented Nov 3, 2011

Milestone sage-4.7.3 deleted

@jdemeyer jdemeyer removed this from the sage-4.8 milestone Nov 3, 2011
@sagetrac-vferay
Copy link
Mannequin

sagetrac-vferay mannequin commented Mar 15, 2012

comment:8

Hi Jason,

it seems that you have not been working recently on this patch. I will add a few feature (antipode, coproduct) in a separate patch.

Valentin

@sagetrac-vferay sagetrac-vferay mannequin added this to the sage-5.0 milestone Mar 15, 2012
@nthiery

This comment has been minimized.

@saliola

This comment has been minimized.

@saliola
Copy link

saliola commented Jul 15, 2012

Changed author from bruce to Jason Bandlow, Chris Berg, Franco Saliola, Nicolas M. Thiéry

@saliola
Copy link

saliola commented Jul 15, 2012

Dependencies: #8899

@saliola
Copy link

saliola commented Jul 15, 2012

Changed keywords from Hopf algebras to Hopf algebras, sd40

@saliola
Copy link

saliola commented Jul 15, 2012

comment:11

(for the patchbot)

Apply:

@sagetrac-chrisjamesberg
Copy link
Mannequin

sagetrac-chrisjamesberg mannequin commented Feb 7, 2013

comment:12

We would like to close this ticket. It has already been implemented in #8899.

@jdemeyer
Copy link

jdemeyer commented Feb 8, 2013

Changed author from Jason Bandlow, Chris Berg, Franco Saliola, Nicolas M. Thiéry to none

@jdemeyer
Copy link

jdemeyer commented Feb 8, 2013

Changed reviewer from bruce to Jason Bandlow, Chris Berg, Franco Saliola, Nicolas M. Thiéry

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

5 participants