Hi Travis,

please don't take my poste as a suggestion. I'm not close enough to the
subject that I really could do that. I just wanted to point out where the
confusion comes from (hoping you have I good Idea what we can do against
it).

Best,
Sebastian


2018-02-26 12:04 GMT+01:00 Travis Scrimshaw <tsc...@ucdavis.edu>:

>
>
>> I had that confusion about the pbw_basis method, as well. From my (non
>> expert) point of view I would have expected the following:
>>
>> What is now your L.pbw_basis() I expected to be
>> L.universal_enveloping_algebra(). This would match what the
>> representation string is telling you:
>>
>> sage: L.pbw_basis()
>> Universal enveloping algebra of Lie algebra of ['A', 2] in the Chevalley
>> basis in the Poincare-Birkhoff-Witt basis
>>
>>
>>
>> What is now your L.universal_enveloping_algebra() is just another
>> (isomorphic) realization. Therefore it could be accessed in this way:
>>
>> L.universal_enveloping_algebra().as_nc_polynomial_ring()
>>
>> matching what the representation string is telling you:
>>
>> sage: L.universal_enveloping_algebra()
>> Noncommutative
>>  Multivariate Polynomial Ring in b0, b1, b2, b3, b4, b5, b6, b7 over
>> Rational Field, nc-relations: {b5*b0: b0*b5 - b4, b6*b3: b3*b6 + 2*b6,
>> .................
>>
>> Furthermore, conversion maps between these two realization (in both
>> directions) are desirable. The access to the PBW-basis would be
>>
>> L.universal_enveloping_algebra().basis()
>>
>> for which a shorthand L.pbw_basis() maybe be implemented (or not).
>>
>> That is both horrible to work with and practically impossible to do. You
> require *every* implementation returned of UEA to know how to go to a PBW
> basis (and in principle, from). There is no reasonable way to expect the
> Lie algebra to know how to do this, and you would have to (IMO needlessly)
> subclass, e.g., NC poly ring, which is generally not a UEA. Also, while NC
> poly ring is generic, it would only work for finite-dimensional Lie
> algebras. We could do this with a category for UEAs, but I do not see any
> benefit to having this overhead and complications. Also, what about the
> cases where the only reasonable implementation of the UEA is the PBW basis?
> What about when there are multiple realizations*? Why should the UEA
> require anything special about the implementation? For the places where I
> do need the specialized things, that is why there is the separate
> pbw_basis().
>
> Also, by being in the category of ModulesWithBasis(), the .basis() must
> return the distinguished basis object, not an isomorphic algebra (since we
> consider categories to be like abstract classes and defining the API).
>
> Also, think about it this way, say we have a global function PBWBasis. It
> would naturally take in a Lie algebra (and optional ordering of the basis)
> as input. Now in many ways L.pbw_basis() is equivalent to pbw_basis(L) and
> the PBW basis is strongly correlated to the Lie algebra. So it is natural
> IMO to have such a method and as a primary entry point.
>
> Best,
> Travis
>
> * - Although to be fair, this is currently something that will need to be
> addressed with the current framework. However, there is a possible
> approaches by returning an algebra that has multiple realizations.
>
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "sage-devel" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/
> topic/sage-devel/XK-RxN3_qvY/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to