#15305: Allow natural morphism between tensor products
-------------------------------------------+-----------------------------
Reporter: tscrim | Owner: sage-combinat
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-5.13
Component: coercion | Resolution:
Keywords: tensor product coercion | Merged in:
Authors: Travis Scrimshaw | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
Dependencies: #15309 | Stopgaps:
-------------------------------------------+-----------------------------
Comment (by tscrim):
Replying to [comment:8 nborie]:
> My code did things exactly like you do (I mean I have no more
interesting proposition). For your current implementation, we win a 20%
speedup without using the constructor CartesianProduct and just iterate on
``im`` instead of CP for the return of the morphism subfunction.
Could you post the code snippet? I'm using the `CartesianProduct` to
iterate over all of the terms to do the expansion, and I'd like to see how
you worked around this.
> About design, I had a discussion with Rémi Maurice (king of
combinatorial Hopf algebras implementation in Marne). Your patch and also
the drafty one I did have the same problem : we check the existence of
"natural" morphism by looking for coercion on atomic parent composing
domain and codomain position-wise. This doesn't catch everything from
far...
>
> ...
>
> If A tensor A has coercion to B, we don't cath the "natural" coercion
from (A tensor A) tensor (A tensor A) to B tensor B.
>
> ...
>
> For these cases (in which most of the time, the user know very well
which is the permutation and the packaging of the atoms for (co)domain),
we should have a nice tensor constructor which accept a tuple of morphisms
(and after the construction, we forgive the parenthesis cutting into atoms
new domain and new codomain). This should leave in a different ticket
letting all current tensor product in Sage benefit from this enhancement.
I agree that this misses many natural maps and would definitely be a nice
feature to have. I also agree that this should wait for a later ticket
(since I'm just using this to make thing easier for #15311).
Thanks,[[BR]]
Travis
--
Ticket URL: <http://trac.sagemath.org/ticket/15305#comment:9>
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/groups/opt_out.