aern2-real-0.1.0.2: Exact real numbers via Cauchy sequences and MPFR

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

AERN2.Sequence.Branching

Contents

Description

Branching operations for sequences

Synopsis

Documentation

type SeqBool = SeqBoolA (->) Source #

data SequenceAtAccuracy a Source #

SequenceAtAccuracy exists only so that we can QuickCheck that Sequence satisfies properties whose statement relies on an instance of HasEqCertainly. Sequence is not an instance but SequenceAtAccuracy is.

Instances

Show a => Show (SequenceAtAccuracy a) Source # 
(HasOrderAsymmetric a b, SuitableForSeq a, SuitableForSeq b, SuitableForSeq (OrderCompareType a b)) => HasOrderAsymmetric (SequenceAtAccuracy a) (SequenceAtAccuracy b) Source # 
(HasEqAsymmetric a b, SuitableForSeq a, SuitableForSeq b, SuitableForSeq (EqCompareType a b)) => HasEqAsymmetric (SequenceAtAccuracy a) (SequenceAtAccuracy b) Source # 
type OrderCompareType (SequenceAtAccuracy a) (SequenceAtAccuracy b) Source # 
type EqCompareType (SequenceAtAccuracy a) (SequenceAtAccuracy b) Source # 

pickNonZeroSeqA :: (QAArrow to, CanPickNonZero a) => Maybe (QAId to) -> [(SequenceA to a, s)] `to` Maybe (SequenceA to a, s) Source #

Given a list [(a1,b1),(a2,b2),...] and assuming that at least one of a1,a2,... is non-zero, pick one of them and return the corresponding pair (ai,bi).

If none of a1,a2,... is zero, either throw an exception or loop forever.

pick :: QAArrow to => Maybe (QAId to) -> [SequenceA to (Maybe a)] `to` a Source #

Orphan instances

CanPickNonZero a => CanPickNonZero (Sequence a) Source # 

Methods

pickNonZero :: [(Sequence a, s)] -> Maybe (Sequence a, s) #

(QAArrow to, ArrowApply to, HasIfThenElse b t, HasIfThenElse b (to AccuracySG t), (~) * (IfThenElseType b (to AccuracySG t)) (to AccuracySG (IfThenElseType b t)), SuitableForSeq b, SuitableForSeq t, SuitableForSeq (IfThenElseType b t)) => HasIfThenElse (SequenceA to b) (SequenceA to t) Source #

"parallel if"

Associated Types

type IfThenElseType (SequenceA to b) (SequenceA to t) :: * #

Methods

ifThenElse :: SequenceA to b -> SequenceA to t -> SequenceA to t -> IfThenElseType (SequenceA to b) (SequenceA to t) #