Ooops, This is because I did not use the root lattice.. This works : sage: A3=RootSystem(['A',3]).root_lattice() sage: t=A3.simple_root(1)+A3.simple_root(2)-A3.simple_root(3) sage: t.is_positive_root() False
But anyway, I think the name is not correct, because it does not return true for positive roots, but for positve linear combinations of positive roots.. And the behaviour is not coherent, which was the cause of my initial problem. Somebody has an idea for a better name ? Frederic On 14 juin, 13:54, Frédéric Chapoton <fchapot...@gmail.com> wrote: > Hi, > > I have found the following strange behaviour : > > sage: A3=RootSystem(['A',3]).ambient_space() > sage: t=A3.simple_root(1)+A3.simple_root(2)-A3.simple_root(3) > sage: t.is_positive_root() > True > > It seems that the function is_positive_root() does not check that its > input is a root ! > > I think the actual content of this function should be used in a > function called "is_positive". Then there should be a function > "is_root" and the actual function "is_positive_root" should check > both. > > What do you think ? > > Frederic -- 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.