Module: sage.algebras.free_algebra
Author: David Kohel, 2005-09
Module-level Functions
R, n, [names=None]) |
Return the free algebra over the ring
on
generators with
given names.
INPUT: R -- ring n -- integer names -- string or list/tuple of n strings OUTPUT: a free algebra
sage: FreeAlgebra(GF(5),3) Free Algebra on 3 generators (x0, x1, x2) over Finite Field of size 5 sage: FreeAlgebra(GF(5),3, ['xx', 'zba', 'Y']) Free Algebra on 3 generators (xx, zba, Y) over Finite Field of size 5 sage: FreeAlgebra(GF(5),3, 'abc') Free Algebra on 3 generators (a, b, c) over Finite Field of size 5 sage: FreeAlgebra(GF(5),1, 'z') Free Algebra on 1 generators (z,) over Finite Field of size 5 sage: FreeAlgebra(GF(5),1, ['alpha']) Free Algebra on 1 generators (alpha,) over Finite Field of size 5 sage: FreeAlgebra(FreeAlgebra(ZZ,1), 2) Free Algebra on 2 generators (x0, x1) over Free Algebra on 1 generators (x,) over Integer Ring
x) |
Class: FreeAlgebra_generic
self, R, n, [names=None]) |
Returns the free algebra on
generators.
sage: F = FreeAlgebra(QQ,ZZ(3),names=("x","y","z")) sage: mul([ F.gen(i) for i in range(3) ], F(1)) x*y*z sage: mul([ F.gen(i%3) for i in range(12) ], F(1)) x*y*z*x*y*z*x*y*z*x*y*z sage: (x,y,z) = F.gens() sage: (2 + x*z + x**2)**2 + (x - y)**2 4 + 3*x^2 - x*y + 2*x*z - y*x + y^2 + x^4 + x^3*z + x*z*x^2 + x*z*x*z
Functions: assign_names,
base_ring,
gen,
monoid,
ngens
self, names) |
Assign the printing names for the generators; this will have the unfortunate effect of overwriting the names for the covering algebra; this also does not overwrite the return value of names() for the Algebra.
self, i) |
The i-th generator of the algebra.
self) |
The free monoid of generators of the algebra.
self) |
The number of generators of the algebra.
Special Functions: __call__,
__cmp__,
__contains__,
__repr__