algebra-simple
Safe HaskellNone
LanguageHaskell2010

Numeric.Algebra.Rings.Field

Description

Provides the Field typeclass.

Since: 0.1

Synopsis

Documentation

class (Ring f, Semifield f) => Field f Source #

Defines a Field i.e. a structure that supports addition, subtraction, multiplication, and division.

Examples:

Expand
  • \( \mathbb{Q} \), the rationals.
>>> :{
  -- Addition
  f1 :: (Field k) => k -> k
  f1 x = x .+. x
:}
>>> f1 5
10
>>> :{
  -- Zero
  f2 :: (Field k) => k -> k
  f2 x = x .+. zero
:}
>>> f2 5
5
>>> :{
  -- Subtraction
  f3 :: (Field k, Num k) => k -> k
  f3 x = x .-. 3
:}
>>> f3 5
2
>>> :{
  -- Multiplication
  f4 :: (Field k) => k -> k
  f4 x = x .*. x
:}
>>> f4 5
25
>>> :{
  -- One
  f5 :: (Field k) => k -> k
  f5 x = x .*. one
:}
>>> f5 5
5
>>> :{
  -- Division
  f6 :: (Field k, Num k) => k -> k
  f6 x = x .%. 2
:}

f6 6 2

Since: 0.1

Instances

Instances details
Field Int16 Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field Int32 Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field Int64 Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field Int8 Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field Word16 Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field Word32 Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field Word64 Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field Word8 Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field Integer Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field Double Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field Float Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field Int Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field Word Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

RealFloat a => Field (Complex a) Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

Field (Ratio Integer) Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field

HasResolution k => Field (Fixed k) Source #

Since: 0.1

Instance details

Defined in Numeric.Algebra.Rings.Field