# FreeAlgebra -- Type of a free algebra

## Synopsis

• Usage:
A = QQ<|x,y|>

## Description

This is the type of a free algebra over a commutative ring R (i.e. a tensor algebra over R).

 i1 : A = QQ<|x,y|> o1 = A o1 : FreeAlgebra

## Functions and methods returning a free algebra :

• "freeAlgebra(Ring,BasicList)" -- see freeAlgebra -- Create a FreeAlgebra

## Methods that use a free algebra :

• "derivation(FreeAlgebra,List)" -- see Derivation -- Derivation defined on a noncommutative algebra
• "derivation(FreeAlgebra,List,RingMap)" -- see Derivation -- Derivation defined on a noncommutative algebra
• FreeAlgebra / Ideal -- Type of a noncommutative ring
• "homogDual(FreeAlgebra)" -- see homogDual -- Computes the dual of a pure homogeneous ideal
• "ncHilbertSeries(FreeAlgebra)" -- see ncHilbertSeries -- Computes the Hilbert series of a noncommutative ring
• "oppositeRing(FreeAlgebra)" -- see oppositeRing -- Creates the opposite ring of a noncommutative ring
• "FreeAlgebra ** FreeAlgebra" -- see qTensorProduct -- Define the (q-)commuting tensor product
• "FreeAlgebra ** FreeAlgebraQuotient" -- see qTensorProduct -- Define the (q-)commuting tensor product
• "FreeAlgebraQuotient ** FreeAlgebra" -- see qTensorProduct -- Define the (q-)commuting tensor product
• "quadraticClosure(FreeAlgebra)" -- see quadraticClosure -- Creates the subideal generated by quadratic elements of a given ideal
• "toCommRing(FreeAlgebra)" -- see toCommRing -- Compute the abelianization of a Ring and returns a Ring.

## For the programmer

The object FreeAlgebra is a type, with ancestor classes EngineRing < Ring < Type < MutableHashTable < HashTable < Thing.