mixed-types-num-0.2.0.1: Alternative Prelude with numeric and logic expressions typed bottom-up

Copyright(c) Michal Konecny
LicenseBSD3
Maintainermikkonecny@gmail.com
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell98

Numeric.MixedTypes.Complex

Contents

Description

Instances for Data.Complex.

Documentation

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

Orphan instances

ConvertibleExactly Int t => ConvertibleExactly Int (Complex t) Source # 
ConvertibleExactly Integer t => ConvertibleExactly Integer (Complex t) Source # 
ConvertibleExactly Rational t => ConvertibleExactly Rational (Complex t) Source # 
HasEqAsymmetric Double b0 => HasEqAsymmetric Double (Complex b0) Source # 
HasEqAsymmetric Int b0 => HasEqAsymmetric Int (Complex b0) Source # 

Associated Types

type EqCompareType Int (Complex b0) :: * Source #

HasEqAsymmetric Integer b0 => HasEqAsymmetric Integer (Complex b0) Source # 
HasEqAsymmetric Rational b0 => HasEqAsymmetric Rational (Complex b0) Source # 
CanSub Double b0 => CanSub Double (Complex b0) Source # 

Associated Types

type SubType Double (Complex b0) :: * Source #

Methods

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

CanSub Int b0 => CanSub Int (Complex b0) Source # 

Associated Types

type SubType Int (Complex b0) :: * Source #

Methods

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

CanSub Integer b0 => CanSub Integer (Complex b0) Source # 

Associated Types

type SubType Integer (Complex b0) :: * Source #

Methods

sub :: Integer -> Complex b0 -> SubType Integer (Complex b0) Source #

CanSub Rational b0 => CanSub Rational (Complex b0) Source # 

Associated Types

type SubType Rational (Complex b0) :: * Source #

CanAddAsymmetric Double b0 => CanAddAsymmetric Double (Complex b0) Source # 

Associated Types

type AddType Double (Complex b0) :: * Source #

Methods

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

CanAddAsymmetric Int b0 => CanAddAsymmetric Int (Complex b0) Source # 

Associated Types

type AddType Int (Complex b0) :: * Source #

Methods

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

CanAddAsymmetric Integer b0 => CanAddAsymmetric Integer (Complex b0) Source # 

Associated Types

type AddType Integer (Complex b0) :: * Source #

Methods

add :: Integer -> Complex b0 -> AddType Integer (Complex b0) Source #

CanAddAsymmetric Rational b0 => CanAddAsymmetric Rational (Complex b0) Source # 

Associated Types

type AddType Rational (Complex b0) :: * Source #

CanMulAsymmetric Double b0 => CanMulAsymmetric Double (Complex b0) Source # 

Associated Types

type MulType Double (Complex b0) :: * Source #

Methods

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

CanMulAsymmetric Int b0 => CanMulAsymmetric Int (Complex b0) Source # 

Associated Types

type MulType Int (Complex b0) :: * Source #

Methods

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

CanMulAsymmetric Integer b0 => CanMulAsymmetric Integer (Complex b0) Source # 

Associated Types

type MulType Integer (Complex b0) :: * Source #

Methods

mul :: Integer -> Complex b0 -> MulType Integer (Complex b0) Source #

CanMulAsymmetric Rational b0 => CanMulAsymmetric Rational (Complex b0) Source # 

Associated Types

type MulType Rational (Complex b0) :: * Source #

(CanMulAsymmetric Double b0, CanMulAsymmetric b0 b0, CanAddSameType (MulType b0 b0), CanDiv (MulType Double b0) (MulType b0 b0)) => CanDiv Double (Complex b0) Source # 

Associated Types

type DivTypeNoCN Double (Complex b0) :: * Source #

type DivType Double (Complex b0) :: * Source #

(CanMulAsymmetric Int b0, CanMulAsymmetric b0 b0, CanAddSameType (MulType b0 b0), CanDiv (MulType Int b0) (MulType b0 b0)) => CanDiv Int (Complex b0) Source # 

Associated Types

type DivTypeNoCN Int (Complex b0) :: * Source #

type DivType Int (Complex b0) :: * Source #

(CanMulAsymmetric Integer b0, CanMulAsymmetric b0 b0, CanAddSameType (MulType b0 b0), CanDiv (MulType Integer b0) (MulType b0 b0)) => CanDiv Integer (Complex b0) Source # 
(CanMulAsymmetric Rational b0, CanMulAsymmetric b0 b0, CanAddSameType (MulType b0 b0), CanDiv (MulType Rational b0) (MulType b0 b0)) => CanDiv Rational (Complex b0) Source # 
CanNeg t => CanNeg (Complex t) Source # 

Associated Types

type NegType (Complex t) :: * Source #

Methods

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

(CanTestInteger t, CanTestZero t) => CanTestInteger (Complex t) Source # 
(CanMulAsymmetric t t, CanAddSameType (MulType t t), CanSqrt (MulType t t)) => CanAbs (Complex t) Source # 

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 # 

Associated Types

type ExpType (Complex t) :: * Source #

Methods

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

HasEqAsymmetric a0 Double => HasEqAsymmetric (Complex a0) Double Source # 
HasEqAsymmetric a0 Rational => HasEqAsymmetric (Complex a0) Rational Source # 
HasEqAsymmetric a0 Int => HasEqAsymmetric (Complex a0) Int Source # 

Associated Types

type EqCompareType (Complex a0) Int :: * Source #

HasEqAsymmetric a0 Integer => HasEqAsymmetric (Complex a0) Integer Source # 
CanSub a0 Double => CanSub (Complex a0) Double Source # 

Associated Types

type SubType (Complex a0) Double :: * Source #

Methods

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

CanSub a0 Rational => CanSub (Complex a0) Rational Source # 

Associated Types

type SubType (Complex a0) Rational :: * Source #

CanSub a0 Int => CanSub (Complex a0) Int Source # 

Associated Types

type SubType (Complex a0) Int :: * Source #

Methods

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

CanSub a0 Integer => CanSub (Complex a0) Integer Source # 

Associated Types

type SubType (Complex a0) Integer :: * Source #

Methods

sub :: Complex a0 -> Integer -> SubType (Complex a0) Integer Source #

CanAddAsymmetric a0 Double => CanAddAsymmetric (Complex a0) Double Source # 

Associated Types

type AddType (Complex a0) Double :: * Source #

Methods

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

CanAddAsymmetric a0 Rational => CanAddAsymmetric (Complex a0) Rational Source # 

Associated Types

type AddType (Complex a0) Rational :: * Source #

CanAddAsymmetric a0 Int => CanAddAsymmetric (Complex a0) Int Source # 

Associated Types

type AddType (Complex a0) Int :: * Source #

Methods

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

CanAddAsymmetric a0 Integer => CanAddAsymmetric (Complex a0) Integer Source # 

Associated Types

type AddType (Complex a0) Integer :: * Source #

Methods

add :: Complex a0 -> Integer -> AddType (Complex a0) Integer Source #

CanMulAsymmetric a0 Double => CanMulAsymmetric (Complex a0) Double Source # 

Associated Types

type MulType (Complex a0) Double :: * Source #

Methods

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

CanMulAsymmetric a0 Rational => CanMulAsymmetric (Complex a0) Rational Source # 

Associated Types

type MulType (Complex a0) Rational :: * Source #

CanMulAsymmetric a0 Int => CanMulAsymmetric (Complex a0) Int Source # 

Associated Types

type MulType (Complex a0) Int :: * Source #

Methods

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

CanMulAsymmetric a0 Integer => CanMulAsymmetric (Complex a0) Integer Source # 

Associated Types

type MulType (Complex a0) Integer :: * Source #

Methods

mul :: Complex a0 -> Integer -> MulType (Complex a0) Integer Source #

CanDiv a0 Double => CanDiv (Complex a0) Double Source # 

Associated Types

type DivTypeNoCN (Complex a0) Double :: * Source #

type DivType (Complex a0) Double :: * Source #

CanDiv a0 Rational => CanDiv (Complex a0) Rational Source # 
CanDiv a0 Int => CanDiv (Complex a0) Int Source # 

Associated Types

type DivTypeNoCN (Complex a0) Int :: * Source #

type DivType (Complex a0) Int :: * Source #

CanDiv a0 Integer => CanDiv (Complex a0) Integer Source # 
ConvertibleExactly t1 t2 => ConvertibleExactly (Complex t1) (Complex t2) Source # 
HasEqAsymmetric a b => HasEqAsymmetric (Complex a) (Complex b) Source # 

Associated Types

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

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

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 # 

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 # 

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 # 

Associated Types

type DivTypeNoCN (Complex a) (Complex b) :: * Source #

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