mixed-types-num-0.5.4.0: Alternative Prelude with numeric and logic expressions typed bottom-up
Copyright(c) Michal Konecny
LicenseBSD3
Maintainermikkonecny@gmail.com
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

Numeric.MixedTypes.Complex

Description

Instances for Data.Complex.

Documentation

tComplex :: T t -> T (Complex t) Source #

Orphan instances

ConvertibleExactly Int t => ConvertibleExactly Int (Complex t) Source # 
Instance details

ConvertibleExactly Integer t => ConvertibleExactly Integer (Complex t) Source # 
Instance details

ConvertibleExactly Rational t => ConvertibleExactly Rational (Complex t) Source # 
Instance details

HasEqAsymmetric Double b => HasEqAsymmetric Double (Complex b) Source # 
Instance details

Associated Types

type EqCompareType Double (Complex b) Source #

HasEqAsymmetric Int b => HasEqAsymmetric Int (Complex b) Source # 
Instance details

Associated Types

type EqCompareType Int (Complex b) Source #

HasEqAsymmetric Integer b => HasEqAsymmetric Integer (Complex b) Source # 
Instance details

Associated Types

type EqCompareType Integer (Complex b) Source #

HasEqAsymmetric Rational b => HasEqAsymmetric Rational (Complex b) Source # 
Instance details

Associated Types

type EqCompareType Rational (Complex b) Source #

CanSub Double b => CanSub Double (Complex b) Source # 
Instance details

Associated Types

type SubType Double (Complex b) Source #

Methods

sub :: Double -> Complex b -> SubType Double (Complex b) Source #

CanSub Int b => CanSub Int (Complex b) Source # 
Instance details

Associated Types

type SubType Int (Complex b) Source #

Methods

sub :: Int -> Complex b -> SubType Int (Complex b) Source #

CanSub Integer b => CanSub Integer (Complex b) Source # 
Instance details

Associated Types

type SubType Integer (Complex b) Source #

CanSub Rational b => CanSub Rational (Complex b) Source # 
Instance details

Associated Types

type SubType Rational (Complex b) Source #

CanAddAsymmetric Double b => CanAddAsymmetric Double (Complex b) Source # 
Instance details

Associated Types

type AddType Double (Complex b) Source #

Methods

add :: Double -> Complex b -> AddType Double (Complex b) Source #

CanAddAsymmetric Int b => CanAddAsymmetric Int (Complex b) Source # 
Instance details

Associated Types

type AddType Int (Complex b) Source #

Methods

add :: Int -> Complex b -> AddType Int (Complex b) Source #

CanAddAsymmetric Integer b => CanAddAsymmetric Integer (Complex b) Source # 
Instance details

Associated Types

type AddType Integer (Complex b) Source #

CanAddAsymmetric Rational b => CanAddAsymmetric Rational (Complex b) Source # 
Instance details

Associated Types

type AddType Rational (Complex b) Source #

CanMulAsymmetric Double b => CanMulAsymmetric Double (Complex b) Source # 
Instance details

Associated Types

type MulType Double (Complex b) Source #

Methods

mul :: Double -> Complex b -> MulType Double (Complex b) Source #

CanMulAsymmetric Int b => CanMulAsymmetric Int (Complex b) Source # 
Instance details

Associated Types

type MulType Int (Complex b) Source #

Methods

mul :: Int -> Complex b -> MulType Int (Complex b) Source #

CanMulAsymmetric Integer b => CanMulAsymmetric Integer (Complex b) Source # 
Instance details

Associated Types

type MulType Integer (Complex b) Source #

CanMulAsymmetric Rational b => CanMulAsymmetric Rational (Complex b) Source # 
Instance details

Associated Types

type MulType Rational (Complex b) Source #

(CanMulAsymmetric Double b, CanMulAsymmetric b b, CanAddSameType (MulType b b), CanDiv (MulType Double b) (MulType b b)) => CanDiv Double (Complex b) Source # 
Instance details

Associated Types

type DivType Double (Complex b) Source #

(CanMulAsymmetric Int b, CanMulAsymmetric b b, CanAddSameType (MulType b b), CanDiv (MulType Int b) (MulType b b)) => CanDiv Int (Complex b) Source # 
Instance details

Associated Types

type DivType Int (Complex b) Source #

Methods

divide :: Int -> Complex b -> DivType Int (Complex b) Source #

(CanMulAsymmetric Integer b, CanMulAsymmetric b b, CanAddSameType (MulType b b), CanDiv (MulType Integer b) (MulType b b)) => CanDiv Integer (Complex b) Source # 
Instance details

Associated Types

type DivType Integer (Complex b) Source #

(CanMulAsymmetric Rational b, CanMulAsymmetric b b, CanAddSameType (MulType b b), CanDiv (MulType Rational b) (MulType b b)) => CanDiv Rational (Complex b) Source # 
Instance details

Associated Types

type DivType Rational (Complex b) Source #

CanNeg t => CanNeg (Complex t) Source # 
Instance details

Associated Types

type NegType (Complex t) Source #

Methods

negate :: Complex t -> NegType (Complex t) Source #

(CanTestInteger t, CanTestZero t) => CanTestInteger (Complex t) Source # 
Instance details

(CanMulAsymmetric t t, CanAddSameType (MulType t t), CanSqrt (MulType t t)) => CanAbs (Complex t) Source # 
Instance details

Associated Types

type AbsType (Complex t) Source #

Methods

abs :: Complex t -> AbsType (Complex t) Source #

(CanExp t, CanSinCos t, CanMulAsymmetric (ExpType t) (SinCosType t)) => CanExp (Complex t) Source # 
Instance details

Associated Types

type ExpType (Complex t) Source #

Methods

exp :: Complex t -> ExpType (Complex t) Source #

HasEqAsymmetric a Integer => HasEqAsymmetric (Complex a) Integer Source # 
Instance details

Associated Types

type EqCompareType (Complex a) Integer Source #

HasEqAsymmetric a Int => HasEqAsymmetric (Complex a) Int Source # 
Instance details

Associated Types

type EqCompareType (Complex a) Int Source #

HasEqAsymmetric a Rational => HasEqAsymmetric (Complex a) Rational Source # 
Instance details

Associated Types

type EqCompareType (Complex a) Rational Source #

HasEqAsymmetric a Double => HasEqAsymmetric (Complex a) Double Source # 
Instance details

Associated Types

type EqCompareType (Complex a) Double Source #

CanSub a Integer => CanSub (Complex a) Integer Source # 
Instance details

Associated Types

type SubType (Complex a) Integer Source #

CanSub a Int => CanSub (Complex a) Int Source # 
Instance details

Associated Types

type SubType (Complex a) Int Source #

Methods

sub :: Complex a -> Int -> SubType (Complex a) Int Source #

CanSub a Rational => CanSub (Complex a) Rational Source # 
Instance details

Associated Types

type SubType (Complex a) Rational Source #

CanSub a Double => CanSub (Complex a) Double Source # 
Instance details

Associated Types

type SubType (Complex a) Double Source #

Methods

sub :: Complex a -> Double -> SubType (Complex a) Double Source #

CanAddAsymmetric a Integer => CanAddAsymmetric (Complex a) Integer Source # 
Instance details

Associated Types

type AddType (Complex a) Integer Source #

CanAddAsymmetric a Int => CanAddAsymmetric (Complex a) Int Source # 
Instance details

Associated Types

type AddType (Complex a) Int Source #

Methods

add :: Complex a -> Int -> AddType (Complex a) Int Source #

CanAddAsymmetric a Rational => CanAddAsymmetric (Complex a) Rational Source # 
Instance details

Associated Types

type AddType (Complex a) Rational Source #

CanAddAsymmetric a Double => CanAddAsymmetric (Complex a) Double Source # 
Instance details

Associated Types

type AddType (Complex a) Double Source #

Methods

add :: Complex a -> Double -> AddType (Complex a) Double Source #

CanMulAsymmetric a Integer => CanMulAsymmetric (Complex a) Integer Source # 
Instance details

Associated Types

type MulType (Complex a) Integer Source #

CanMulAsymmetric a Int => CanMulAsymmetric (Complex a) Int Source # 
Instance details

Associated Types

type MulType (Complex a) Int Source #

Methods

mul :: Complex a -> Int -> MulType (Complex a) Int Source #

CanMulAsymmetric a Rational => CanMulAsymmetric (Complex a) Rational Source # 
Instance details

Associated Types

type MulType (Complex a) Rational Source #

CanMulAsymmetric a Double => CanMulAsymmetric (Complex a) Double Source # 
Instance details

Associated Types

type MulType (Complex a) Double Source #

Methods

mul :: Complex a -> Double -> MulType (Complex a) Double Source #

CanDiv a Integer => CanDiv (Complex a) Integer Source # 
Instance details

Associated Types

type DivType (Complex a) Integer Source #

CanDiv a Int => CanDiv (Complex a) Int Source # 
Instance details

Associated Types

type DivType (Complex a) Int Source #

Methods

divide :: Complex a -> Int -> DivType (Complex a) Int Source #

CanDiv a Rational => CanDiv (Complex a) Rational Source # 
Instance details

Associated Types

type DivType (Complex a) Rational Source #

CanDiv a Double => CanDiv (Complex a) Double Source # 
Instance details

Associated Types

type DivType (Complex a) Double Source #

ConvertibleExactly t1 t2 => ConvertibleExactly (Complex t1) (Complex t2) Source # 
Instance details

HasEqAsymmetric a b => HasEqAsymmetric (Complex a) (Complex b) Source # 
Instance details

Associated Types

type EqCompareType (Complex a) (Complex b) Source #

CanSub a b => CanSub (Complex a) (Complex b) Source # 
Instance details

Associated Types

type SubType (Complex a) (Complex b) Source #

Methods

sub :: Complex a -> Complex b -> SubType (Complex a) (Complex b) Source #

CanAddAsymmetric a b => CanAddAsymmetric (Complex a) (Complex b) Source # 
Instance details

Associated Types

type AddType (Complex a) (Complex b) Source #

Methods

add :: Complex a -> Complex b -> AddType (Complex a) (Complex b) Source #

(CanMulAsymmetric a b, CanAddSameType (MulType a b), CanSubSameType (MulType a b)) => CanMulAsymmetric (Complex a) (Complex b) Source # 
Instance details

Associated Types

type MulType (Complex a) (Complex b) Source #

Methods

mul :: Complex a -> Complex b -> MulType (Complex a) (Complex b) Source #

(CanMulAsymmetric a b, CanAddSameType (MulType a b), CanSubSameType (MulType a b), CanMulAsymmetric b b, CanAddSameType (MulType b b), CanDiv (MulType a b) (MulType b b)) => CanDiv (Complex a) (Complex b) Source # 
Instance details

Associated Types

type DivType (Complex a) (Complex b) Source #

Methods

divide :: Complex a -> Complex b -> DivType (Complex a) (Complex b) Source #