Opened 7 years ago

Closed 6 years ago

Last modified 6 years ago

#16451 closed enhancement (fixed)

Implement tensor product of cystals categories and a better search for highest weight elements

Reported by: tscrim Owned by: sage-combinat
Priority: major Milestone: sage-6.4
Component: combinatorics Keywords: crystals, tensor products
Cc: sage-combinat, aschilling, nthiery Merged in:
Authors: Travis Scrimshaw Reviewers: Anne Schilling, Nicolas M. Thiéry
Report Upstream: N/A Work issues:
Branch: c9df470 (Commits) Commit:
Dependencies: Stopgaps:

Description (last modified by tscrim)

Currently in a tensor product of crystals, we search through all elements and filter. However if given a highest weight element in a tensor product a (x) b, then b must be highest weight. This means we can use a backtracing algorithm to find all highest weight elements which this ticket implements.

This first implements the categories of tensor products of crystals (currently all crystal subcategories are monoidal under tensor products).

This also changes the output of the current highest_weight_vectors() to return a tuple since we don't want to allow modifications to the output of a @cached_method.

Change History (13)

comment:1 Changed 7 years ago by tscrim

  • Branch set to public/crystals/highest_weight_tensor-16451
  • Commit set to aecbe5464d9002ecdcebf66cc78e639c3bc74f60
  • Description modified (diff)
  • Status changed from new to needs_review
  • Summary changed from Implement a better search for highest weight elements in a tensor product of cystals to Implement tensor product of cystals categories and a better search for highest weight elements

As far as I can tell, this is independent of #16001.

Nicolas, can you make a quick check to make sure I'm doing everything correctly? If I am, I think I've found a bug for Modules:

sage: Modules(QQ).TensorProducts()
Category of objects

New commits:

a68457fImplemented a better search for highest weight elements in tensor products.
53ebc56Created tensor product of crystals category.
81adbdeImplemented other tensor product categories.
aecbe54Cleanup of commented out code.

comment:2 Changed 6 years ago by vbraun_spam

  • Milestone changed from sage-6.3 to sage-6.4

comment:3 Changed 6 years ago by git

  • Commit changed from aecbe5464d9002ecdcebf66cc78e639c3bc74f60 to ed95e0e6cdbad56b9cc31be72b283d17d2938cce

Branch pushed to git repo; I updated commit sha1. New commits:

6c33201Merge branch 'public/crystals/highest_weight_tensor-16451' of trac.sagemath.org:sage into public/crystals/highest_weight_tensor-16451
ed95e0eMade changes that Nicolas and I talked about.

comment:4 Changed 6 years ago by git

  • Commit changed from ed95e0e6cdbad56b9cc31be72b283d17d2938cce to 4f91c0f9b5474b86cfad1893d44c35d175d5fc5d

Branch pushed to git repo; I updated commit sha1. New commits:

4f91c0fFix and test for Kashiwara convention of tensor products.

comment:5 Changed 6 years ago by tscrim

Hey Anne,

Nicolas looked at the category code and layout today and I made the necessary changes. The only thing needing review is the backtracing algorithm in highest_weight_crystals.py; would you be willing to finish the review.

Thanks,
Travis

comment:6 Changed 6 years ago by aschilling

  • Reviewers set to Anne Schilling, Nicolas M. Thiery
  • Status changed from needs_review to positive_review

comment:7 Changed 6 years ago by git

  • Commit changed from 4f91c0f9b5474b86cfad1893d44c35d175d5fc5d to c063d5b0145f3f71733e539b9ae7d8f0e120c499
  • Status changed from positive_review to needs_review

Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. New commits:

c063d5bFixed typo

comment:8 Changed 6 years ago by aschilling

  • Status changed from needs_review to positive_review

comment:9 Changed 6 years ago by vbraun

  • Status changed from positive_review to needs_work
sage -t --long src/doc/en/thematic_tutorials/lie/crystals.rst
**********************************************************************
File "src/doc/en/thematic_tutorials/lie/crystals.rst", line 701, in doc.en.thematic_tutorials.lie.crystals
Failed example:
    T.highest_weight_vectors()
Expected:
    [[1, 1, 1], [1, 2, 1], [2, 1, 1], [3, 2, 1]]
Got:
    ([1, 1, 1], [2, 1, 1], [1, 2, 1], [3, 2, 1])
**********************************************************************
1 item had failures:
   1 of 147 in doc.en.thematic_tutorials.lie.crystals
    [113 tests, 1 failure, 1.85 s]

comment:10 Changed 6 years ago by git

  • Commit changed from c063d5b0145f3f71733e539b9ae7d8f0e120c499 to c9df4709e1325f1c13b3d7253a69c69280d0e987

Branch pushed to git repo; I updated commit sha1. New commits:

c9df470Fixed trivial doctest failure due to new format.

comment:11 Changed 6 years ago by tscrim

  • Status changed from needs_work to positive_review

comment:12 Changed 6 years ago by vbraun

  • Branch changed from public/crystals/highest_weight_tensor-16451 to c9df4709e1325f1c13b3d7253a69c69280d0e987
  • Resolution set to fixed
  • Status changed from positive_review to closed

comment:13 Changed 6 years ago by kcrisman

  • Commit c9df4709e1325f1c13b3d7253a69c69280d0e987 deleted
  • Reviewers changed from Anne Schilling, Nicolas M. Thiery to Anne Schilling, Nicolas M. Thiéry
Note: See TracTickets for help on using tickets.