Opened 13 years ago

Closed 13 years ago

#8154 closed enhancement (fixed)

Enhancement for crystals

Reported by: aschilling Owned by: sage-combinat
Priority: major Milestone: sage-4.3.3
Component: combinatorics Keywords: combinatorics, crystals, KR crystals
Cc: sage-combinat Merged in: sage-4.3.3.alpha1
Authors: Anne Schilling Reviewers: Daniel Bump
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description (last modified by aschilling)

New features for crystals:

  • Started framework for general highest weight crystals in /combinat/crystals/highest_weight.py (with contributions from Nicolas M. Thiery)
  • Implementation of finite dimensional highest weight crystals for type E6 and E7
  • Added new class for direct sums of crystals in /combinat/crystals/direct_sum.py
  • Added a new crystal morphism function for acyclic crystals
  • Added the Demazure operators on crystals
  • Added Demazure characters for finite crystals in the ambient weight lattice
  • Added _test_fast_iter method to compare two different ways of creating list of classical crystals

New features for Kirillov-Reshetikhin crystals:

  • Implementation of Kirillov-Reshetikhin crystals B{r,s} of type E_6{(1)} for r=1,2,6
  • Pointer to KirillovReshetikhin? crystals given in /combinat/crystals/affine.py (as requested by Dan Bump)
  • Added R-matrix for tensor product of two KR crystals

Bug fix:

  • Fixed whitespace problems in /combinat/crystals/crystals.py /combinat/crystals/kirillov_reshetikhin.py /combinat/crystals/affine.py /combinat/crystals/spins.py /combinat/crystals/tensor_products.py /combinat/crystals/fast_crystals.py /combinat/crystals/letters.py

Depends on trac ticket #7978 (trac_7978_crystal_cleanup-as.patch)

Attachments (1)

trac_8154_affine-E-as.patch (163.5 KB) - added by aschilling 13 years ago.

Download all attachments as: .zip

Change History (9)

comment:1 Changed 13 years ago by aschilling

  • Description modified (diff)

comment:2 Changed 13 years ago by aschilling

  • Status changed from new to needs_review

comment:3 Changed 13 years ago by aschilling

  • Description modified (diff)

Changed 13 years ago by aschilling

comment:4 Changed 13 years ago by aschilling

  • Description modified (diff)

comment:5 Changed 13 years ago by aschilling

  • Summary changed from Enhencement for crystals to Enhancement for crystals

comment:6 Changed 13 years ago by bump

  • Reviewers set to Daniel Bump

comment:7 Changed 13 years ago by bump

  • Milestone set to sage-4.3.3
  • Status changed from needs_review to positive_review

The patch (which goes on top of #7978) applies cleanly to Sage 4.3.2. It passes sage -testall. I also tested various things to my satisfaction.

The Demazure operators can be described at two different levels: either as difference operators on the weight space or (following Littelmann) as operators on the crystal. Here they are implemented as operators on the crystal. They seem to work correctly. Later it might be useful to implement them independently in sage.combinat.root_systems.weyl_characters in the WeightRing?.

The direct sums of crystals are implemented.This is essentially just the disjoint union. One point is that if two component crystals are equal, a "keepkey" can be used to paint them different colors. Then the disjoint union produces a multiset. This scheme is inherited from the parent class DisjointUnionEnumeratedSets? where it is noted that it is subject to future change. I suppose this could be improved but that changes must first come in sage.sets.disjoint_union_enumerated_set.py.

The framework for general highest weight crystals is important. Currently one can produce all finite highest weight crystals for types A,B,C,D and G2, but one must know how to do it. For types A and C, the CrystalOfTableaux? is sufficient but for types B and D one has half integral weights and crystals with half-integral highest weight must be created by tensoring a spin crystal with a CrystalOfTableaux?. The framework in highest_weight.py is a step towards making this easier. It should not be hard to implement this for the finite classical Cartan types.

Various other enhancements and fixes.

I tested the patch to my satisfaction and recommend merging it.

comment:8 Changed 13 years ago by mvngu

  • Merged in set to sage-4.3.3.alpha1
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.