#7922: Categories for Weyl character rings and weight rings (was: pickling fails
in WeightRing)
-------------------------------------------+--------------------------------
Reporter: nthiery | Owner: bump
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-4.7
Component: combinatorics | Keywords:
Author: Dan Bump, Nicolas M. Thiéry | Upstream: N/A
Reviewer: Nicolas M. Thiéry, Dan Bump | Merged:
Work_issues: |
-------------------------------------------+--------------------------------
Changes (by newvalueoldvalue):
* reviewer: nthiery => Nicolas M. Thiéry, Dan Bump
* type: defect => enhancement
* author: => Dan Bump, Nicolas M. Thiéry
Old description:
> First issue caught by #7921:
>
> {{{
> sage: A2 = WeylCharacterRing(['A',2])
> sage: a2 = WeightRing(A2)
> sage: TestSuite(a2).run()
> Failure in _test_element_pickling:
> Traceback (most recent call last):
> ...
> AssertionError: 2*a2(0,0,0) != 2*a2(0,0,0)
> }}}
>
> Indeed:
> {{{
> sage: x = a2.an_element()
> sage: x == loads(dumps(x))
> False
> }}}
>
> I assume that this is an issue in equality test. This should be fixed for
> free when WeightRing's will use CombinatorialFreeModules
> and categories.
>
> '''Apply''' [attachment: trac_7922-rebased-4.7.alpha2.patch]
>
> '''Remove''' the following pickles from the pickle jar:
>
> _class__sage_combinat_root_system_weyl_characters_WeightRing__.*
> _class__sage_combinat_root_system_weyl_characters_WeylCharacterRing_class__.*
> _class__sage_combinat_root_system_weyl_characters_WeylCharacter__.*
>
> '''Copy''' the contents of
> [attachment: trac_7922-new_pickles.tar.gz] into
> {{{data/ext_code/pickle_jar}}}.
New description:
This ticket refactors the code of WeylCharacterRing and WeightRing to use
categories and (combinatorial) free modules. Along the way, it adds a
couple features (Dan: please list them here), and solves a pickling issue
which was caught by #7921:
{{{
sage: A2 = WeylCharacterRing(['A',2])
sage: a2 = WeightRing(A2)
sage: TestSuite(a2).run()
Failure in _test_element_pickling:
Traceback (most recent call last):
...
AssertionError: 2*a2(0,0,0) != 2*a2(0,0,0)
}}}
Indeed:
{{{
sage: x = a2.an_element()
sage: x == loads(dumps(x))
False
}}}
'''Apply''' [attachment: trac_7922-rebased-4.7.alpha2.patch]
'''Remove''' the following pickles from the pickle jar:
_class__sage_combinat_root_system_weyl_characters_WeightRing__.*
_class__sage_combinat_root_system_weyl_characters_WeylCharacterRing_class__.*
_class__sage_combinat_root_system_weyl_characters_WeylCharacter__.*
'''Copy''' the contents of
[attachment: trac_7922-new_pickles.tar.gz] into
{{{data/ext_code/pickle_jar}}}.
--
Comment:
Hi Dan,
I just did a final proofreading, fixed a couple typos, updated
coerce_to_sl in the doctests of the thematic tutorials, and removed some
trailing white space and tabs.
For me it is now all good to go. Please check my reviewer's patch on the
sage-combinat patch server. If it's ok with you, you can fold/upload and
set a positive review here on my behalf.
[http://combinat.sagemath.org/patches/file/tip/trac_7922-final-review-
nt.patch]
Cheers,
Nicolas
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/7922#comment:13>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
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-trac?hl=en.