| NumericPrelude-0.0: An experimental alternative hierarchy of numeric type classes | Contents | Index |
|
| Algebra.ModuleBasis | | Portability | requires multi-parameter type classes | | Stability | provisional | | Maintainer | numericprelude@henning-thielemann.de |
|
|
|
|
|
| Description |
| Abstraction of bases of finite dimensional modules
|
|
| Synopsis |
|
|
|
| Documentation |
|
| class C a v => C a v where |
It must hold:
Module.linearComb (flatten v `asTypeOf` [a]) (basis a) == v
dimension a v == length (flatten v `asTypeOf` [a])
| |
| Methods | | basis :: a -> [v] | | basis of the module with respect to the scalar type,
the result must be independent of argument, undefined should suffice.
| |
| flatten :: v -> [a] | | scale a vector by a scalar
| |
| dimension :: a -> v -> Int | | the size of the basis, should also work for undefined argument,
the result must be independent of argument, undefined should suffice.
|
| |
| show/hide Instances | |
|
|
| Instances for atomic types
|
|
| Instances for composed types
|
|
| Properties
|
|
| propFlatten :: (Eq v, C a v) => a -> v -> Bool |
|
| propDimension :: C a v => a -> v -> Bool |
|
| Produced by Haddock version 0.7 |