Safe Haskell | None |
---|---|
Language | Haskell98 |
Abstraction of normed vector spaces
Documentation
class (C a, C a v) => Sqr a v where Source
Square of the Euclidean norm of a vector. This is sometimes easier to implement.
Sqr Double Double | |
Sqr Float Float | |
Sqr Int Int | |
Sqr Integer Integer | |
(Sqr a v, RealFloat v) => Sqr a (Complex v) | |
Sqr a v => Sqr a [v] | |
Sqr a b => Sqr a (T b) | |
Sqr a b => Sqr a (T b) | |
(Sqr a v0, Sqr a v1) => Sqr a (v0, v1) | |
(Ord i, Eq a, Eq v, Sqr a v) => Sqr a (Map i v) | |
(Sqr a v0, Sqr a v1, Sqr a v2) => Sqr a (v0, v1, v2) | |
(C a, C a) => Sqr (T a) (T a) | |
Sqr a v => Sqr (T a) (T v) |
normSqrFoldable :: (Sqr a v, Foldable f) => f v -> a Source
normSqrFoldable1 :: (Sqr a v, Foldable f, Functor f) => f v -> a Source
class Sqr a v => C a v where Source
A vector space equipped with an Euclidean or a Hilbert norm.
Minimal definition:
norm
C Double Double | |
C Float Float | |
C Int Int | |
C Integer Integer | |
(C a, Sqr a v, RealFloat v) => C a (Complex v) | |
(C a, Sqr a v) => C a [v] | |
(C a, Sqr a b) => C a (T b) | |
(C a, Sqr a b) => C a (T b) | |
(C a, Sqr a v0, Sqr a v1) => C a (v0, v1) | |
(Ord i, Eq a, Eq v, C a, Sqr a v) => C a (Map i v) | |
(C a, Sqr a v0, Sqr a v1, Sqr a v2) => C a (v0, v1, v2) | |
C a v => C (T a) (T v) |