GradedAlgebra(`R`, `E`) denotes `E-graded \ ``R`-algebra`''`. A graded algebra is a graded module together with a degree preserving `R`-linear map, called the product. The name `product\ ``''` is written out in full so inner and outer products with the same mapping type can be distinguished by name.

0: %

1: %

1 is the identity for `product`.

*: (%, R) -> %

*: (R, %) -> %

+: (%, %) -> %

-: % -> %

-: (%, %) -> %

=: (%, %) -> Boolean

from BasicType

~=: (%, %) -> Boolean

from BasicType

coerce: % -> OutputForm
coerce: R -> %

from CoercibleFrom R

degree: % -> E

latex: % -> String

from SetCategory

product: (%, %) -> %

`product(a, b)` is the degree-preserving `R`-linear product: `degree product(a, b) = degree a + degree b` `product(a1+a2, b) = product(a1, b) + product(a2, b)` `product(a, b1+b2) = product(a, b1) + product(a, b2)` `product(r*a, b) = product(a, r*b) = r*product(a, b)` `product(a, product(b, c)) = product(product(a, b), c)`

retract: % -> R

from RetractableTo R

retractIfCan: % -> Union(R, failed)

from RetractableTo R

BasicType