Ask Your Question

Revision history [back]

When you do A(x), it uses the method A.__call__(x), so you can get help by evaluating A.__call__?. For both of these algebras, this turns out to be the same method (both inherited from another class), which tries to coerce the argument x into A. In the case of H, H.basis().keys()[1] returns a matrix, and apparently there is a coercion map from matrices to H. In the case of A, you get a string, and there is no predefined way to coerce strings to elements of A.

For A, as you note, you can use A.monomial(x), but I think the preferred method is A.term(x). Look at its documentation; it constructs an element of A corresponding to the basis element indexed by x.