I have just pushed a new version of my partition tuple patch #13072 to the
combinat queue which addresses the deprecation issues flagged by Nicolas
and others. As there are many functions involved I thought I should post a
summary of the functions affected so that the few people in the universe
who care can check to see whether what I have done is sensible.
The list below is in order of what I think is decreasing controversy.
1. A=sage.combinat.partition.number_of_partitions() is marked for
deprecation in favour of B=sage.combinat.partitions.number_of_partitions(),
which is what function A() calls most of the time. As agreed above,
number_of_partitions() will stay in the global name space, but this made
the deprecation somewhat fiddly as I did not want to deprecate
number_of_partitions() for "normal use" because from the user perspective
this function will not change. Instead, I have deprecated the individual
options of number_of_partitions() so deprecation warnings are only
generated when A() does NOT call B(). In the global namespace,
number_of_partitions still points to A(). When the functions which are
marked for deprecation below are removed, number_of_partitions() should be
changed to point to B() and A() should be changed into a
deprecated_function_alias to B(). See the patch for more details.
2. For use in Partitions().random_element() the function
number_of_partitions() was cached. This cached function was almost never
used so, assuming that caching this function is a good idea, I decided to
cache sage.combinat.partitions.number_of_partitions() always. Please let
me know if this is a bad idea.
3. The two functions
- cyclic_permutations_of_partition
- cyclic_permutations_of_partition_iterator
are deprecated in sage.combinat.partition and they have been moved to
sage.combinat.set_partition and renamed ...._of_set_partition... As far
as I can tell these functions are never used but, in any case, they are
methods on set partitions rather than partitions. Nonetheless, they need to
be deprecated from the global name space.
4. The following functions were marked for deprecation several years ago
so they have been removed from sage.combinat.partition.py:
- RestrictedPartitions
- partitions_list
- number_of_partitions_list
- partitions_restricted
- number_of_partitions_restricted
5. The following functions now give deprecation warnings and are
marked for removal from the global name space:
- partitions_set
- number_of_partitions_set
- ordered_partitions
- number_of_ordered_partitions
- partitions,
- ferrers_diagram
- partitions_greatest
- partitions_greatest_eq
- partitions_tuples
- number_of_partitions_tuples
- partition_power
In all cases, these function are deprecated in favour of (methods in)
parent classes.
I also removed Nicolas' temporary patch
trac_13072-tuples-of-partitions_number_of_partitions-nt.patch<http://combinat.sagemath.org/patches/rev/63e7c7e0183d>from
the queue.
Andrew
--
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/-/mcM6TNsvPPMJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-combinat-devel?hl=en.