Re: [sage-combinat-devel] semistandard tableaux
On Tue, Jun 01, 2010 at 12:20:23AM -0700, Anne Schilling wrote: > >Mostly, we want to make a change to add a feature, so that one can > >specify an additional keyword argument max_entry=k so as to get the > >Semistandard Tableaux(p,mu) with entries in 1..k, or max_entry=-1 so > >there is no maximum. (Currently, the entries are in 1..|p| unless mu > >is specified, and I would keep that as the default.) So our proposed > >change is just an enhancement and presumably won't screw anything up > >if done right. I do also want to change __repr__ so it always > >explicitly says what the maximum entry is. > > I agree that being able to specify the maximum entry is a natural > thing to do (and is not always |p| in many applications). +1. Please use the occasion to rename __repr__ (Python's convention) to _repr_ (Sage's convention). What about specifying an alphabet rather than max_entry? Or possibly allowing for both, with max_entry = k translating into alphabet = {1,...,k}? Also, just to make sure, do you agree that the options mu, max_entry, and alphabet are mutually exclusive. Oh, and a last comment: thanks to crystal operations, generating and counting semistandard tableaux over a fixed alphabet is actually much easier/faster than doing it over a fixed content mu. So the current implementation of semistandard tableaux over a fixed alphabet by iterating over all the possible contents is far from optimal. I let you see if you want, or not, to get into that. > >While looking at the code, though, I noticed something a bit wierd > >about the way SemistandardTableaux(p,mu) operates. As it stands, p > >can be an integer, a partition, or None, and mu is an integer vector > >describing content. If p is an integer, it returns all tableaux of > >size p (and with content mu if mu is specified). If p is a partition, > >it returns all tableaux of shape p (and with content mu if mu is > >specified). If p is None, it ignores mu. This seems wrong: surely it > >ought to give you all tableaux of content mu and size |mu|. So I > >wanted to change that. But it's not because I really need it, it's > >just tidy-mindedness. If anyone suggests it's a bad idea to do this > >part, I won't. Looks like it is just not implemented (and a warning about this is missing). Go ahead! Oh, and by the way: it would be great if you could use this occasion to clean up the Semistandard_* classes to inherit from UniqueRepresentation and Parent rather than CombinatorialClass, and set their category to FiniteEnumeratedSets() / InfiniteEnumeratedSets() properly. See the comments in the #8910 patch, and ask for help if needed! Thanks! Nicolas -- Nicolas M. ThiƩry "Isil" http://Nicolas.Thiery.name/ -- You received this message because you are subscribed to the Google Groups "sage-combinat-devel" group. To post to this group, send email to sage-combinat-de...@googlegroups.com. To unsubscribe from this group, send email to sage-combinat-devel+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sage-combinat-devel?hl=en.
Re: [sage-combinat-devel] semistandard tableaux
Hi Hugh, Eric Webster and I want to make some changes to SemistandardTableaux(p,mu). This is the first change I've tried to make to Sage, so I'm not totally sure of the protocol, but it was suggested to me that I should describe here what we plan to do (as well as opening a trac ticket, which I will do shortly). Great! Yes, discussing proposed changes is probably a good idea. You can either first put your changes on the sage-combinat server, so that people can use and view your code, or as you wrote, you can open a trac ticket and post your changes there. Mostly, we want to make a change to add a feature, so that one can specify an additional keyword argument max_entry=k so as to get the Semistandard Tableaux(p,mu) with entries in 1..k, or max_entry=-1 so there is no maximum. (Currently, the entries are in 1..|p| unless mu is specified, and I would keep that as the default.) So our proposed change is just an enhancement and presumably won't screw anything up if done right. I do also want to change __repr__ so it always explicitly says what the maximum entry is. I agree that being able to specify the maximum entry is a natural thing to do (and is not always |p| in many applications). While looking at the code, though, I noticed something a bit wierd about the way SemistandardTableaux(p,mu) operates. As it stands, p can be an integer, a partition, or None, and mu is an integer vector describing content. If p is an integer, it returns all tableaux of size p (and with content mu if mu is specified). If p is a partition, it returns all tableaux of shape p (and with content mu if mu is specified). If p is None, it ignores mu. This seems wrong: surely it ought to give you all tableaux of content mu and size |mu|. So I wanted to change that. But it's not because I really need it, it's just tidy-mindedness. If anyone suggests it's a bad idea to do this part, I won't. I am not sure why this was done. I assume you want to edit the lines around 2264 in tableau.py. Cheers, Anne -- You received this message because you are subscribed to the Google Groups "sage-combinat-devel" group. To post to this group, send email to sage-combinat-de...@googlegroups.com. To unsubscribe from this group, send email to sage-combinat-devel+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sage-combinat-devel?hl=en.
[sage-combinat-devel] semistandard tableaux
Hi! Eric Webster and I want to make some changes to SemistandardTableaux(p,mu). This is the first change I've tried to make to Sage, so I'm not totally sure of the protocol, but it was suggested to me that I should describe here what we plan to do (as well as opening a trac ticket, which I will do shortly). Mostly, we want to make a change to add a feature, so that one can specify an additional keyword argument max_entry=k so as to get the Semistandard Tableaux(p,mu) with entries in 1..k, or max_entry=-1 so there is no maximum. (Currently, the entries are in 1..|p| unless mu is specified, and I would keep that as the default.) So our proposed change is just an enhancement and presumably won't screw anything up if done right. I do also want to change __repr__ so it always explicitly says what the maximum entry is. While looking at the code, though, I noticed something a bit wierd about the way SemistandardTableaux(p,mu) operates. As it stands, p can be an integer, a partition, or None, and mu is an integer vector describing content. If p is an integer, it returns all tableaux of size p (and with content mu if mu is specified). If p is a partition, it returns all tableaux of shape p (and with content mu if mu is specified). If p is None, it ignores mu. This seems wrong: surely it ought to give you all tableaux of content mu and size |mu|. So I wanted to change that. But it's not because I really need it, it's just tidy-mindedness. If anyone suggests it's a bad idea to do this part, I won't. cheers Hugh -- You received this message because you are subscribed to the Google Groups "sage-combinat-devel" group. To post to this group, send email to sage-combinat-de...@googlegroups.com. To unsubscribe from this group, send email to sage-combinat-devel+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sage-combinat-devel?hl=en.