Hi Travis!

On Fri, Nov 02, 2012 at 07:45:35PM -0700, Travis Scrimshaw wrote:
>        +1 on Partitions(order=...)
>        -1 on Partitions().options(order=...)
> 
>    I'm currently planning on changing it to the first way.

Thanks!

>      >    - Deprecating the following methods and classes:
>      >        * evaluation()
> 
>    It was from MuPAD-combinat and the name doesn't make sense to me. I don't
>    feel strongly about this, so if you (or anyone else) want to keep it
>    there, I have no objections.

Here is the rationale: The *commutative evaluation*, often shortened
to *evaluation* of a word is its image in the free commutative
monoid. In other words one counts how many occurrences there are of
each letter. By extension this definition extends to any word-like
object (partitions, ...). And that's exactly what `to_exp` is doing.
(and it turns out that for a partition this contains all the information).

Granted: there should be an abstract class for word-like objects (or
more possibly generally objects with labels), and this method should
be implemented there. But in the mean time just leave it there.

>    So then make OrderedPartitions similar to how Partitions is (as a factory
>    class)?

Precisely. But this can wait as it currently is until we indeed have
more than one class to justify the existence of a factory.

>      >    - Changed *_lengths into *_length_tableau() (ex. arm_lengths()
>      becomes
>      >    arm_length_tableau() ) and deprecated old names
> 
>      What is the rational?
> 
>    The output is a tableau (whose entries are the *_lengths) and I believe it
>    is more clear. Again I have no strong opinions.

We have that general rule of thumb that one should name the
mathematical meaning of the output rather than its data structure.
>From my point of view, the output is the lengths of the arms of all
the cells; the fact that we use a tableau as data structure to store
that information is essentially an implementation detail.

Opinions anyone else?

>      >    - Made Partitions_n inherit from Partitions
> 
>      This breaks the "is_a" rule: the set of all partitions of 3 is not an
>      instance of the class Partitions; the (by the way unique) instance of
>      the latter indeed models the set of all partitions. Hmm, I would have
>      expected UniqueRepresentation to bark about this.
> 
>    When I said inherit, I meant I made Partitions_n a subclass of Partitions.

That's also how I interpreted inherit. My point is precisely that
making Partitions_n a subclass of Partitions breaks the "is_a" rule.

>    If you run sage -t partition.py with the current version of the
>    patch, you'll see this occur (in particular, it doesn't know how
>    to handle the additional arguments). 

Ok, I'll try to pull, but there is no guarantee that this will get through.

>    I'll write a small example illustrating this and open a new trac
>    ticket.

Thanks!

Cheers,
                                Nicolas
--
Nicolas M. ThiƩry "Isil" <nthi...@users.sf.net>
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-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.

Reply via email to