login  home  contents  what's new  discussion  bug reports     help  links  subscribe  changes  refresh  edit

FreeModule implements free module over a ring with generators indexed by a set. Each element can be expressed as a finite linear combination of generators. Only non-zero terms are stored.

This domain implements linear combinations of elements from the domain S with coefficients in the domain R where S is a set and R is a ring (which may be non-commutative).

Ref: http://en.wikipedia.org/wiki/Free_module

See: [PolySpad]?

A FreeModule over a [Field]? is a VectorSpace? unfortunately this is not currently understood by Axiom:

fricas
(1) -> FreeModule(Fraction Integer,OrderedVariableList [e1,e1]) has VectorSpace(Fraction Integer)
There are no library operations named VectorSpace Use HyperDoc Browse or issue )what op VectorSpace to learn if there is any operation containing " VectorSpace " in its name.
Cannot find a definition or applicable library operation named VectorSpace with argument type(s) Type
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need.

Ref: http://en.wikipedia.org/wiki/Vector_space#Modules

Add:

        if R has Field then VectorSpace(R)
        ...
        if R has Field then
          if S has Finite then
            dimension():CardinalNumber == coerce size()$S
          else
             dimension():CardinalNumber == Aleph(0)

fricas
F2:=FreeModule(Fraction Integer,OrderedVariableList [e1,e1])

\label{eq1}\hbox{\axiomType{FreeModule}\ } \left({{\hbox{\axiomType{Fraction}\ } \left({\hbox{\axiomType{Integer}\ }}\right)}, \:{\hbox{\axiomType{OrderedVariableList}\ } \left({\left[ e 1, \: e 1 \right]}\right)}}\right)(1)
Type: Type
fricas
F2 has VectorSpace(Fraction Integer)
There are no library operations named VectorSpace Use HyperDoc Browse or issue )what op VectorSpace to learn if there is any operation containing " VectorSpace " in its name.
Cannot find a definition or applicable library operation named VectorSpace with argument type(s) Type
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need.




  Subject:   Be Bold !!
  ( 15 subscribers )  
Please rate this page: