HORIZON HASKELLDocslts/ghc-9.10.xc74966e2026-09-27Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · c74966e · 2026-09-27

Modulenumeric-prelude-0.4.4Haskell98

Number.GaloisField2p32m5

This number type is intended for tests of functions over fields, where the field elements need constant space. This way we can provide a Storable instance. For Rational this would not be possible.

However, be aware that sums of non-zero elements may yield zero. Thus division is not always defined, where it is for rational numbers.

  • 1 type
  • 4 values
Example9 expressions
import qualified Number.GaloisField2p32m5 as GFimport qualified Algebra.Laws as Lawsimport Test.QuickCheck ((==>))import NumericPrelude.Numericimport NumericPrelude.Baseimport Prelude ()gf :: GF.T -> GF.Tgf = id
newtypenewtype T
#
Property
Laws.identity (+) zero . gf
Property
Laws.commutative (+) . gf
Property
Laws.associative (+) . gf
Property
Laws.inverse (+) negate zero . gf
Property
\x -> Laws.inverse (+) (x-) (gf x)
Property
Laws.identity (*) one . gf
Property
Laws.commutative (*) . gf
Property
Laws.associative (*) . gf
Property
\y -> gf y /= zero ==> Laws.inverse (*) recip one y
Property
\y x -> gf y /= zero ==> Laws.inverse (*) (x/) x y

Constructors

Instances9Eq, Show, Storable, Arbitrary, C, …
  • Eq TDefined in numeric-prelude-0.4.4 · Number.GaloisField2p32m5
  • Show TDefined in numeric-prelude-0.4.4 · Number.GaloisField2p32m5
  • Storable TDefined in numeric-prelude-0.4.4 · Number.GaloisField2p32m5
  • Arbitrary TDefined in numeric-prelude-0.4.4 · Number.GaloisField2p32m5
  • C TDefined in numeric-prelude-0.4.4 · Number.GaloisField2p32m5
  • C TDefined in numeric-prelude-0.4.4 · Number.GaloisField2p32m5
  • C TDefined in numeric-prelude-0.4.4 · Number.GaloisField2p32m5
  • C TDefined in numeric-prelude-0.4.4 · Number.GaloisField2p32m5
  • C T TDefined in numeric-prelude-0.4.4 · Number.GaloisField2p32m5