#16001: Make the tensor functorial construction work for crystals
-------------------------------------+-------------------------------------
Reporter: tscrim | Owner: sage-combinat
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-6.2
Component: categories | Resolution:
Keywords: tensor products | Merged in:
construction | Reviewers:
Authors: Travis Scrimshaw | Work issues:
Report Upstream: N/A | Commit:
Branch: | 25f4a43d3daef82fc79421a2485b626f91d77816
public/combinat/crystals/tensor_construction-16001| Stopgaps:
Dependencies: |
-------------------------------------+-------------------------------------
Comment (by tscrim):
This is an attempt at me doing category theory with Lang's ''Algebra'' in
front of me, so I hope it's not too far off.
I don't think this is a (Cartesian) product (in the category of crystals)
since there are not natural projection maps (crystal morphisms) onto the
factors as the weight/epsilons/phis are not preserved. In the category of
crystals, I believe "multi-linearity" is defined by the tensor product
rule, so it is a tensor product.
For vector spaces, the direct sum does correspond to the category
theoretic product. So when we want to consider this as a basis indexing
''set'' for a free module and take a tensor product of those modules, we
will want to consider the product, but only after applying the forgetful
functor to the crystal. I think we'd want to do this in other situations
where we have a concrete category that doesn't have a product.
However I think the situation is a bit different as a
U,,q,,('''g''')-module in category ''O'' when we want to use the crystal
structure to construct the canonical basis. I'm currently doing this in
#14901. Although I will need to override the tensor product construction
to pass to the corresponding tensor product of crystals in order to use
that structure.
Now onto code. I do agree it would be nice to have
`TensorProdutOfCrystals` inherit from Cartesian products when thought of
as sets, but I think there would only be three methods that we'd need to
duplicate (`__iter__()`, `__contains__()`, and `cardinality()`). Unless
you can think of others? Maybe we should keep the class of
`CartesianProduct` (of sets) around as a way to inherit these features?
Please correct me if I'm wrong on any of the above.
Best,[[BR]]
Travis
--
Ticket URL: <http://trac.sagemath.org/ticket/16001#comment:3>
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 unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.