# DualSpace -- a dual functional vector subspace

## Description

This type stores a finite dimensional subspace of the local dual of a polynomial ring at a point. In practice, the subspace is stored as a PolySpace with functionals represented by the corresponding polynomial, along with a Point. The following methods can be used to access a DualSpace:

• gens -- a one-row matrix of the generators
• dim -- the number of generators
• ring -- the ring of the generators
• point -- the base point of the dual space

## Methods that use an object of class DualSpace :

• areEqual(DualSpace,DualSpace) -- approximate equality of dual spaces
• "dim(DualSpace)"
• "generators(DualSpace)"
• "net(DualSpace)"
• "point(DualSpace)"
• "ring(DualSpace)"
• "dualSpace(DualSpace)" -- see dualSpace -- construct a DualSpace
• "isContained(DualSpace,DualSpace)" -- see isContained -- Is one space contained in the other
• "random(DualSpace)" -- see random(PolySpace) -- random element of a subspace
• "random(ZZ,DualSpace)" -- see random(PolySpace) -- random element of a subspace
• "reduceSpace(DualSpace)" -- see reduceSpace -- reduce the generators of a space
• "texMath(DualSpace)" -- see texMath(PolySpace) -- convert to TeX math format

## For the programmer

The object DualSpace is a type, with ancestor classes MutableHashTable < HashTable < Thing.