Field

Description

Dieses Modul stellt die zentrale Typklasse Field fuer Koerper zur Verfuegung.

Synopsis

Documentation

class IntegralDomain a ⇒ Field a where

Klasse fuer Typen, die Koerper repraesentieren. Ein Koerper ist fuer uns ein (kommutativer) Ring, der folgendes Zusatzaxiom erfuellt:

Fuer jedes Ringelement x gilt entweder, dass x = 0, oder x ist invertierbar.

Somit sind Koerper dieser Definition nach stets diskret.

Methods

recip ∷ a → Maybe a

Entscheidet, ob das gegebene Koerperelement null ist, und falls nein, berechnet sein Inverses.

(/)Field a ⇒ a → a → a

Syntaktischer Zucker, um bequemer Divisionen formulieren zu koennen. Ist der Divisor null, wird eine Laufzeitausnahme geworfen.

newtype F a

Dummytyp, um ueberlappende Instanzdeklarationen vermeiden zu koennen.

Constructors

F 

Fields

unF ∷ a
 

Instances

Functor F 
Eq a ⇒ Eq (F a) 
(Fractional a, Field a) ⇒ Fractional (F a) 
(Num a, Field a) ⇒ Num (F a) 
Ord a ⇒ Ord (F a) 
(Show a, Field a) ⇒ Show (F a) 
Arbitrary a ⇒ Arbitrary (F a) 
HasFloatingApprox a ⇒ HasFloatingApprox (F a) 
HasConjugation a ⇒ HasConjugation (F a) 
HasRationalEmbedding a ⇒ HasRationalEmbedding (F a) 
HasTestableAssociatedness a ⇒ HasTestableAssociatedness (F a) 
OrderedRing a ⇒ OrderedRing (F a) 
IntegralDomain a ⇒ IntegralDomain (F a) 
Ring a ⇒ Ring (F a) 
NormedRing a ⇒ NormedRing (F a) 
Field a ⇒ Field (F a) 
Field a ⇒ EuclideanRing (F a) 
Field a ⇒ HasAnnihilatingPolynomials (F a) 

props_fieldAxioms ∷ (Field a, Eq a, Arbitrary a, Show a) ⇒ Proxy a → [Property]

check_Field ∷ IO ()