Re: [sage-combinat-devel] Re: several alphabets for symmetric functions
Mike Zabrocki writes: > Hi Martin, > > I just got around to looking at your code a little. > > I recognize your function my_plethysm() because this is > simply .coproduct() > > sage: Sym = SymmetricFunctions(QQ) > sage: Sym.inject_shorthands() > sage: p([1,1,1]).coproduct() > p[] # p[1, 1, 1] + 3*p[1] # p[1, 1] + 3*p[1, 1] # p[1] + p[1, 1, 1] # p[] > sage: h([3]).coproduct() > h[] # h[3] + h[1] # h[2] + h[2] # h[1] + h[3] # h[] well, I see that my_plethysm(f, X+Y) is the same as f.coproduct. But what then is my_plethysm(f, g) for arbitrary g (i.e., g an arbitrary polynomial in X,Y,Z,...). I think it would be nicest to be able to write f(X*Y-2*X+Z) for myplethysm(f, X*Y-2*X+Z) > I am not quite sure what your function 'multi_schur' is doing. It's just something I took from Lascoux' book to have some tests. > If you want to evaluate a symmetric function at a difference of > alphabets, you should apply the antipode to the second tensor > (antipode is the effect of changing X -> -X). > > I think your change_basis should be in sage and it > possibly isn't. For instance, if I type: > sage: p.tensor_square()( h([3]).coproduct() ) > (which is what I think should be > all hell breaks loose. > But > sage: change_basis([p,p],h([3]).coproduct()) > works nicely. I think Nicolas hinted at what to do, but I didn't really understand. He wrote: > Now many desirable features are missing: > > sage: x.coproduct() > ... NotImplemented ... > sage: pp = tensor([p,p]) > sage: pp(x) > ... NotImplementedError ... > > Those should be implemented generically for tensor products. The first > one should be just a couple lines in: > > Coalgebras.TensorProducts.ParentMethods.coproduct > > The other is probably best implemented by adding an appropriate > _coerce_map_from in tensor products (I would need to search for the > best spot for this. > > Plethysm (in a stupid way) should not be much more work. To be put in: > > > sage.combinat.sf.sfa.SymmetricFunctionsBases.TensorProducts.ElementMethods > > or something similar. Martin -- 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-devel@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] Re: several alphabets for symmetric functions
Hi Martin, I just got around to looking at your code a little. I recognize your function my_plethysm() because this is simply .coproduct() sage: Sym = SymmetricFunctions(QQ) sage: Sym.inject_shorthands() sage: p([1,1,1]).coproduct() p[] # p[1, 1, 1] + 3*p[1] # p[1, 1] + 3*p[1, 1] # p[1] + p[1, 1, 1] # p[] sage: h([3]).coproduct() h[] # h[3] + h[1] # h[2] + h[2] # h[1] + h[3] # h[] I am not quite sure what your function 'multi_schur' is doing. If you want to evaluate a symmetric function at a difference of alphabets, you should apply the antipode to the second tensor (antipode is the effect of changing X -> -X). I think your change_basis should be in sage and it possibly isn't. For instance, if I type: sage: p.tensor_square()( h([3]).coproduct() ) (which is what I think should be all hell breaks loose. But sage: change_basis([p,p],h([3]).coproduct()) works nicely. -Mike On Tuesday, 17 July 2012 18:29:26 UTC-4, Martin wrote: > > Hi Mike, Nicolas, Viviane, *, > > I implemented naive algorithms to do plethysm and change of basis, > together with some tests from Lascoux' book. I don't really know what > the coproduct should be. I am convinced that one could do much better, > but at least it's a start. (I now see that I should probably have > looked at the implementation of plethysm in sfa first...) > > In particular, one might want to have clever specialisations of > alphabets and also finite alphabets -- probably via include and exclude > as in the single alphabet case. > > (I found it slightly curious to discover that p(X-Y) = 1, by the way.) > > I have absolutely no idea about where to put this in the sources. Help > is much appreciated. > > One other thing: is this actually related to Viviane's work? > > All the best, > > Martin > > -- You received this message because you are subscribed to the Google Groups "sage-combinat-devel" group. To view this discussion on the web visit https://groups.google.com/d/msg/sage-combinat-devel/-/rFiBCAtKriMJ. To post to this group, send email to sage-combinat-devel@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.