| Home | Trees | Indices | Help |
|---|
|
|
Free algebras
AUTHOR: David Kohel, 2005-09
William Stein 2006-11-01 -- add all doctests; implemented many things.
EXAMPLES:
sage: F = FreeAlgebra(ZZ,3,'x,y,z')
sage: F.base_ring()
Integer Ring
sage: G = FreeAlgebra(F, 2, 'm,n'); G
Free Algebra on 2 generators (m, n) over Free Algebra on 3 generators (x, y, z) over Integer Ring
sage: G.base_ring()
Free Algebra on 3 generators (x, y, z) over Integer Ring
TESTS:
sage: F = FreeAlgebra(GF(5),3,'x')
sage: F == loads(dumps(F))
True
sage: F.<x,y,z> = FreeAlgebra(GF(5),3)
sage: F == loads(dumps(F))
True
sage: F = FreeAlgebra(GF(5),3, ['xx', 'zba', 'Y'])
sage: F == loads(dumps(F))
True
sage: F = FreeAlgebra(GF(5),3, 'abc')
sage: F == loads(dumps(F))
True
sage: F = FreeAlgebra(FreeAlgebra(ZZ,1,'a'), 2, 'x')
sage: F == loads(dumps(F))
True
|
|||
|
FreeAlgebra_generic The free algebra on $n$ generators over a base ring. |
|||
|
|||
|
|||
|
|||
|
|||
cache = Cache(FreeAlgebra_generic)
|
|||
|
|||
Return the free algebra over the ring $R$ on $n$ generators with
given names.
INPUT:
R -- ring
n -- integer
names -- string or list/tuple of n strings
OUTPUT:
a free algebra
EXAMPLES:
sage: FreeAlgebra(GF(5),3,'x')
Free Algebra on 3 generators (x0, x1, x2) over Finite Field of size 5
sage: F.<x,y,z> = FreeAlgebra(GF(5),3)
sage: (x+y+z)^2
x^2 + x*y + x*z + y*x + y^2 + y*z + z*x + z*y + z^2
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,'a'), 2, 'x')
Free Algebra on 2 generators (x0, x1) over Free Algebra on 1 generators (a,) over Integer Ring
Free algebras are globally unique:
sage: F = FreeAlgebra(ZZ,3,'x,y,z')
sage: G = FreeAlgebra(ZZ,3,'x,y,z')
sage: F is G
True
Free algebras commute with their base ring.
sage: K.<a,b> = FreeAlgebra(QQ,2)
sage: K.is_commutative()
False
sage: L.<c> = FreeAlgebra(K,1)
sage: L.is_commutative()
False
sage: s = a*b^2 * c^3; s
a*b^2*c^3
sage: parent(s)
Free Algebra on 1 generators (c,) over Free Algebra on 2 generators (a, b) over Rational Field
sage: c^3 * a * b^2
a*b^2*c^3
|
Return True if x is a free algebra; otherwise, return False.
EXAMPLES:
sage: is_FreeAlgebra(5)
False
sage: is_FreeAlgebra(ZZ)
False
sage: is_FreeAlgebra(FreeAlgebra(ZZ,100,'x'))
True
|
| Home | Trees | Indices | Help |
|---|
| Generated by Epydoc 3.0beta1 on Thu Jul 17 04:23:24 2008 | http://epydoc.sourceforge.net |