Ticket #12895 (needs_review enhancement)

Opened 13 months ago

Last modified 15 hours ago

Categories: adds support for SubcategoryMethods

Reported by: nthiery Owned by: nthiery
Priority: major Milestone: sage-5.10
Component: categories Keywords:
Cc: sage-combinat, SimonKing Work issues:
Report Upstream: N/A Reviewers:
Authors: Nicolas M. Thiéry Merged in:
Dependencies: #11935, #12894 Stopgaps:

Description

With this patch, a category can implement a nested class SubcategoryMethods? that provides methods for all subcategories of this category (similar to ParentMethods? that provides methods for all parents of all subcategories of this category).

This is implemented by updating the class of each category C, at the end of its initialization, to insert C.subcategory_class as superclass (like what is done for Parents and Elements).

This is a bit tricky, since the super_categories method needs to be called during the initialization.

The patch is under finalization on  http://combinat.sagemath.org/patches/

Attachments

trac_12895-subcategory-methods-nt.patch Download (24.1 KB) - added by nthiery 24 hours ago.

Change History

comment:1 follow-up: ↓ 2 Changed 13 months ago by SimonKing

How can one get the patch? I tried

hg qimport http://combinat.sagemath.org/patches/file/2b30dc3e4bf4/trac_12895-subcategory-methods-nt.patch

but only get an empty patch.

comment:2 in reply to: ↑ 1 Changed 13 months ago by nthiery

Replying to SimonKing:

How can one get the patch? I tried

hg qimport http://combinat.sagemath.org/patches/file/2b30dc3e4bf4/trac_12895-subcategory-methods-nt.patch

but only get an empty patch.

Strange. Anyway, there it is.

comment:3 Changed 13 months ago by nthiery

  • Status changed from new to needs_review

Oh, and I should mention that basically all tests pass.

Changed 24 hours ago by nthiery

comment:4 Changed 24 hours ago by nthiery

Hi Simon,

I have just been through the patch on the Sage-Combinat queue (same as here previously, but rebased a couple times). I improved a bit the documentation and fixed three remaining doctests failures and reposted. On my side, it's good to go. Please review!

Note: the patch includes two small fixes in sage.combinat.sf which I am going to ask Anne to double check.

Cheers,

Nicolas

comment:5 follow-up: ↓ 6 Changed 24 hours ago by nthiery

For the record: all long tests passed with the following patches applied on top of 5.10 beta4 on Ubuntu:

trac_14612-gyw_test_speedup-ts.patch
trac_14574-folded.patch
trac_14610-LSenergy-ms.patch
try-as.patch
trac9107_nesting_nested_classes.patch
trac_9107_fix_cross_reference.patch
trac_12876_category_abstract_classes_for_hom.patch
trac_12848-posets-order_ideal_complement_generators_fix-nt-v2.patch
trac_14266_ascii_art_13_05_15_EliX-jbp.patch
trac_14266-ascii_art-review-ts.patch
trac11935_weak_pickling_by_construction-nt.patch
trac_11935-weak_pickling_by_construction-review-ts.patch
trac_12895-subcategory-methods-nt.patch

comment:6 in reply to: ↑ 5 ; follow-up: ↓ 7 Changed 22 hours ago by aschilling

The changes to the k-Schur function code look ok. Thanks for catching those!

Anne

comment:7 in reply to: ↑ 6 Changed 15 hours ago by nthiery

Replying to aschilling:

The changes to the k-Schur function code look ok. Thanks for catching those!

Thanks Anne for the review.

Simon: the ticket's review is all yours now :-)

Note: See TracTickets for help on using tickets.