| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Numeric.Algebra.Space.Quartamodule
Description
Provides the Quartamodule typeclass.
Since: 0.1
Synopsis
- class (ASemigroup m, MSemiSpace m r, Quartaring r) => Quartamodule m r | m -> r
Documentation
class (ASemigroup m, MSemiSpace m r, Quartaring r) => Quartamodule m r | m -> r Source #
Defines a Quartamodule over a Quartaring. For elements x, y of a
Quartamodule M and r, s in a Quartaring R, we have the following
laws:
(x .+. y) .* r === (x .* r) .+. (y .* r) x .* (r .+. s) === (x .* r) .+. (x .* s) x .* (r .*. s) === (x .* r) .* s x .* one === x -- when R is a Demiring (has multiplicative identity)
Examples:
- \( \mathbb{Z}^{\gt 1} \times \mathbb{Z}^{\gt 1} \), two-dimensional integers greater than one.
>>>:{-- Addition f1 :: (Quartamodule m r) => m -> m f1 m = m .+. m :}
>>>f1 (8,4)(16,8)
>>>:{-- Scalar multiplication f2 :: (Quartamodule m r, Num r) => m -> m f2 m = m .* 6 :}
>>>f2 (8,4)(48,24)
Since: 0.1
Instances
| Quartaring r => Quartamodule (r, r) r Source # | Since: 0.1 |
Defined in Numeric.Algebra.Space.Quartamodule | |
| Quartaring r => Quartamodule (r, r, r) r Source # | Since: 0.1 |
Defined in Numeric.Algebra.Space.Quartamodule | |
| Quartaring r => Quartamodule (r, r, r, r) r Source # | Since: 0.1 |
Defined in Numeric.Algebra.Space.Quartamodule | |
| Quartaring r => Quartamodule (r, r, r, r, r) r Source # | Since: 0.1 |
Defined in Numeric.Algebra.Space.Quartamodule | |
| Quartaring r => Quartamodule (r, r, r, r, r, r) r Source # | Since: 0.1 |
Defined in Numeric.Algebra.Space.Quartamodule | |
| Quartaring r => Quartamodule (r, r, r, r, r, r, r) r Source # | Since: 0.1 |
Defined in Numeric.Algebra.Space.Quartamodule | |
| Quartaring r => Quartamodule (r, r, r, r, r, r, r, r) r Source # | Since: 0.1 |
Defined in Numeric.Algebra.Space.Quartamodule | |
| Quartaring r => Quartamodule (r, r, r, r, r, r, r, r, r) r Source # | Since: 0.1 |
Defined in Numeric.Algebra.Space.Quartamodule | |