{-| Module : AERN2.Sequence Description : fast convergent sequences Copyright : (c) Michal Konecny License : BSD3 Maintainer : mikkonecny@gmail.com Stability : experimental Portability : portable A type of fast convergent sequences parametrised by the arrow in which the elements of the sequence are queried -} module AERN2.Sequence ( module AERN2.AccuracySG -- * The protocol and type of fast converging sequences , SequenceP(..), pSeq , SuitableForSeq , SequenceA, Sequence, newSeq, newSeqSimple , seqName, seqId, seqSources, seqRename , seqWithAccuracy, (?), seqWithAccuracyA, seqsWithAccuracyA , (-:-), (-:-||), (-:-|) , SequenceAtAccuracy(..) , convergentList2SequenceA , seqByPrecision2SequenceA -- * selecting one of several staged computations , pick -- * auxiliary functions for making new sequence operations , unaryOp, binaryOp, binaryOpWithPureArg , getSeqFnNormLog , getInitQ1FromSimple, getInitQ1TFromSimple, getInitQ1Q2FromSimple -- , binaryWithBall ) where import MixedTypesNumPrelude -- import qualified Prelude as P -- import Control.Arrow -- import AERN2.Norm -- import AERN2.MP.Precision import AERN2.QA.Protocol import AERN2.AccuracySG import AERN2.Sequence.Type import AERN2.Sequence.Helpers import AERN2.Sequence.Comparison import AERN2.Sequence.Branching import AERN2.Sequence.Ring () import AERN2.Sequence.Field () import AERN2.Sequence.Elementary () import AERN2.Sequence.PreludeOps () -- instance -- (QAArrow to -- , OrderedRing a -- , SuitableForSeq a -- , SuitableForSeq (EqCompareType a a) -- , SuitableForSeq (EqCompareType a Int) -- , SuitableForSeq (EqCompareType a Integer) -- , HasNorm (EnsureNoCN a) -- , CanSetPrecision a, CanSetPrecision (EnsureCN a)) -- => -- Ring (SequenceA to a)