AERN-Net-0.2.1: Compositional lazy dataflow networks for exact real number computationSource codeContentsIndex
Control.ERNet.Blocks.Real.LFT
Portabilityportable
Stabilityexperimental
Maintainermik@konecny.aow.cz
Contents
protocol
processes
arithmetic
Description
A protocol for sending a real number using a stream of LFT digits based on the work of Potts and Edalat (1997).
Synopsis
data QALFTRealQ = QALFTRealQ Int
data QALFTRealA = QALFTRealA [LFTDigit]
data LFTDigit
= LFT_L
| LFT_M
| LFT_R
| LFT_SG_ZER
| LFT_SG_INF
| LFT_SG_POS
| LFT_SG_NEG
lftDigit2Tensor :: LFTDigit -> LFTTensor
chTLFTReal :: ChannelType
lftRealNumberIncremProcess :: (Channel sIn sOut sInAnyProt sOutAnyProt, ERIntApprox ra, Typeable ra) => ERProcessName -> (EffortIndex -> ra) -> ERProcess sInAnyProt sOutAnyProt
lftRealNumberBufferForkProcess :: Channel sIn sOut sInAnyProt sOutAnyProt => ERProcessName -> ERProcess sInAnyProt sOutAnyProt
data LFTTensor = LFTTensor {
lftTNSrank :: Int
lftTNScoeffs :: Map [Bool] Integer
}
lftConst :: Integer -> Integer -> LFTTensor
lftMatrix :: Integer -> Integer -> Integer -> Integer -> LFTTensor
lftTensorBinary :: Integer -> Integer -> Integer -> Integer -> Integer -> Integer -> Integer -> Integer -> LFTTensor
lftTensorInfo :: ERApprox ra => Granularity -> LFTTensor -> ExtInterval ra
lftTensorIsPositive :: LFTTensor -> Bool
lftTensorCompose :: LFTTensor -> Int -> LFTTensor -> LFTTensor
lftTensorComposeUnary :: LFTTensor -> LFTTensor -> LFTTensor
protocol
data QALFTRealQ Source
Constructors
QALFTRealQ Int
show/hide Instances
data QALFTRealA Source
Constructors
QALFTRealA [LFTDigit]
show/hide Instances
data LFTDigit Source
Constructors
LFT_L
LFT_M
LFT_R
LFT_SG_ZER
LFT_SG_INF
LFT_SG_POS
LFT_SG_NEG
show/hide Instances
lftDigit2Tensor :: LFTDigit -> LFTTensorSource
Interpret the LFT digits as LFTs.
chTLFTReal :: ChannelTypeSource
processes
lftRealNumberIncremProcessSource
:: (Channel sIn sOut sInAnyProt sOutAnyProt, ERIntApprox ra, Typeable ra)
=> ERProcessName
-> EffortIndex -> rathe number to represent; intersection of this sequence has to converge to a singleton
-> ERProcess sInAnyProt sOutAnyProt
A process communicating a real number to a single client incrementally digit by digit.
lftRealNumberBufferForkProcess :: Channel sIn sOut sInAnyProt sOutAnyProt => ERProcessName -> ERProcess sInAnyProt sOutAnyProtSource
A process that receives a real number incrementally digit by digit and makes it available to multiple clients incrementally or non-incrementally.
arithmetic
data LFTTensor Source
A multi-dimensional linear fractional transformation with integer coefficients.
Constructors
LFTTensor
lftTNSrank :: Int
lftTNScoeffs :: Map [Bool] Integerthe first Bool indicates whether or not the term is in the numerator of the LFT
show/hide Instances
lftConst :: Integer -> Integer -> LFTTensorSource
Constructor for a 0-ary LFT with integer coefficients.
lftMatrix :: Integer -> Integer -> Integer -> Integer -> LFTTensorSource
Constructor for a unary LFT with integer coefficients.
lftTensorBinary :: Integer -> Integer -> Integer -> Integer -> Integer -> Integer -> Integer -> Integer -> LFTTensorSource
Constructor for a binary LFT with integer coefficients.
lftTensorInfo :: ERApprox ra => Granularity -> LFTTensor -> ExtInterval raSource
Work out what interval is the image of the lft when all variables are given the value [0,oo]. The returned interval may be slightly bigger than the exact image due to rounding but it always contains the whole exact image.
lftTensorIsPositive :: LFTTensor -> BoolSource
lftTensorCompose :: LFTTensor -> Int -> LFTTensor -> LFTTensorSource
Compose two LFTs, ie substituting one into another using one of its variables.
lftTensorComposeUnary :: LFTTensor -> LFTTensor -> LFTTensorSource
Compose two unary LFTs, ie substituting one into the other.
Produced by Haddock version 2.4.2