How to make a vector space with basis a *graded* one, and how to do linear algebra on its homogeneous parts?

i like this post (click again to cancel)
i dont like this post (click again to cancel)

I was sent here from StackOverflow.

I have a vector space with given basis (it is also a Hopf algebra, but this is not part of the problem). How do I make it into a graded vector space? E. g., I know that in order to make it into an algebra, I have to define a function called product_on_basis somewhere in its definition, and that in order to make it into a coalgebra, I have to define a function called coproduct_on_basis; but what function do I have to define in order to make it into a graded vector space? How can I find out the name of this function? (It is not given in . I know the names of the functions for the multiplication and the comultiplication from python2.6/site-packages/sage/categories/examples/ , but I don't see such a .py file for graded vector spaces.)

Once this is done, I would like to do linear algebra on the graded components. They are each finite-dimensional, with basis a part of the combinatorial basis of the big space, so there shouldn't be any problem. I have defined two maps and want to know, e. g., whether the image of one lies inside the image of the other. Is there an abstract way to do this in Sage or do I have to translate these maps into matrices?

Context (not important): I have (successfully, albeit stupidly) implemented the Malvenuto-Reutenauer Hopf algebra of permutations:

html version resp. sws file

Now I want to check some of its properties. This checking cannot be automated on the whole space, but it is a finite problem on each of its graded components, so I would like to check it, say, on the fifth one.

asked Jan 26 '12

darijgrinberg gravatar image darijgrinberg
47 3 7

updated Jan 26 '12

2 Answers:

i like this answer (click again to cancel)
i dont like this answer (click again to cancel) darijgrinberg has selected this answer as correct

You can get some information from the answers to this question.


posted Jan 27 '12

John Palmieri gravatar image John Palmieri flag of United States
2990 9 26 67

Okay, John, thanks - I did it at last. I didn't expect that writing everything as a matrix would be as simple as it turned out to be.

darijgrinberg (Feb 27 '12)
i like this answer (click again to cancel)
i dont like this answer (click again to cancel)

I think CombinatorialFreeModule and CombinatorialAlgebra are the places to start.

The most sophisticated graded Hopf algebras implemented in Sage are, I think, the Steenrod Algebras (Also see the online source code), so that implementation may give you some ideas too.

Good luck -- I am personally interested in computations with differential graded algebras so I would love to see how you implement your classes.


posted Jan 27 '12

niles gravatar image niles
3725 7 45 104

Thanks for the link to the Steenrod algebra! I got the function, it's unsurprisingly called def homogeneous_component(self, n). I still would like to know how to find out such names in general, rather than by analyzing the source code of Sage. And I still would like to know how to do linear algebra.

darijgrinberg (Jan 27 '12)

BTW version 2 is up (at the same addresses), but I doubt you can pick up any good programming habits from me...

darijgrinberg (Jan 27 '12)

For this issue, I think you're going to have to look at the source code. Graded objects are not well-developed in Sage. If you follow the link in my answer, you will also find a patch which implements an example of a graded algebra, whose explicit purpose is to be a model on which other people can base their work.

John Palmieri (Jan 27 '12)

As far as doing linear algebra, I think that CombinatorialFreeModule is not that great, unfortunately. So I think converting to matrices is the right way to go.

John Palmieri (Jan 27 '12)

Your answer

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
Login/Signup to Post

Question tools


Asked: Jan 26 '12

Seen: 267 times

Last updated: Jan 27 '12

powered by ASKBOT version 0.7.22
Copyright Sage, 2010. Some rights reserved under creative commons license.