DeepDarkFantasy-0.2017.8.4: A DSL for creating neural network.

Safe HaskellSafe
LanguageHaskell2010

DDF.Size

Documentation

newtype Size h x Source #

Constructors

Size 

Fields

Instances

DBI Size Source # 

Methods

z :: Size (a, h) a Source #

s :: Size h b -> Size (a, h) b Source #

abs :: Size (a, h) b -> Size h (a -> b) Source #

app :: Size h (a -> b) -> Size h a -> Size h b Source #

hoas :: (Size (a, h) a -> Size (a, h) b) -> Size h (a -> b) Source #

com :: Size h ((b -> c) -> (a -> b) -> a -> c) Source #

flip :: Size h ((a -> b -> c) -> b -> a -> c) Source #

id :: Size h (a -> a) Source #

const :: Size h (a -> b -> a) Source #

scomb :: Size h ((a -> b -> c) -> (a -> b) -> a -> c) Source #

dup :: Size h ((a -> a -> b) -> a -> b) Source #

let_ :: Size h (a -> (a -> b) -> b) Source #

Fix Size Source # 

Methods

fix :: Size h (f (Fix f) -> Fix f) Source #

runFix :: Size h (Fix f -> f (Fix f)) Source #

Float Size Source # 
FreeVector Size Source # 

Methods

freeVector :: Size h ((b -> d) -> FreeVector b d) Source #

runFreeVector :: Size h (FreeVector b d -> b -> d) Source #

Option Size Source # 

Methods

nothing :: Size h (Maybe a) Source #

just :: Size h (a -> Maybe a) Source #

optionMatch :: Size h (b -> (a -> b) -> Maybe a -> b) Source #

Prod Size Source # 

Methods

mkProd :: Size h (a -> b -> (a, b)) Source #

zro :: Size h ((a, b) -> a) Source #

fst :: Size h ((a, b) -> b) Source #

swap :: Size h ((x, y) -> (y, x)) Source #

curry :: Size h (((a, b) -> c) -> a -> b -> c) Source #

uncurry :: Size h ((a -> b -> c) -> (a, b) -> c) Source #

Dual Size Source # 

Methods

dual :: Size h ((x, y) -> Dual x y) Source #

runDual :: Size h (Dual x y -> (x, y)) Source #

mkDual :: Size h (x -> y -> Dual x y) Source #

dualOrig :: Size h (Dual x y -> x) Source #

dualDiff :: Size h (Dual x y -> y) Source #

Sum Size Source # 

Methods

left :: Size h (a -> Either a b) Source #

right :: Size h (b -> Either a b) Source #

sumMatch :: Size h ((a -> c) -> (b -> c) -> Either a b -> c) Source #

Unit Size Source # 

Methods

unit :: Size h () Source #

Y Size Source # 

Methods

y :: Size h ((a -> a) -> a) Source #

undefined :: Size h a Source #

List Size Source # 

Methods

nil :: Size h [a] Source #

cons :: Size h (a -> [a] -> [a]) Source #

listMatch :: Size h (b -> (a -> [a] -> b) -> [a] -> b) Source #

listAppend :: Size h ([a] -> [a] -> [a]) Source #

Char Size Source # 

Methods

char :: Char -> Size h Char Source #

IO Size Source # 

Methods

putStrLn :: Size h (String -> IO ()) Source #

Bool Size Source # 

Methods

bool :: Bool -> Size h Bool Source #

ite :: Size h (a -> a -> Bool -> a) Source #

Double Size Source # 
Map Size Source # 

Methods

empty :: Size h (Map k a) Source #

singleton :: Size h (k -> a -> Map k a) Source #

lookup :: Ord k => Size h (Map k a -> k -> Maybe a) Source #

alter :: Ord k => Size h ((Maybe a -> Maybe a) -> k -> Map k a -> Map k a) Source #

mapMap :: Size h ((a -> b) -> Map k a -> Map k b) Source #

unionWith :: Ord k => Size h ((a -> a -> a) -> Map k a -> Map k a -> Map k a) Source #

insert :: Ord k => Size h (k -> a -> Map k a -> Map k a) Source #

DiffWrapper Size Source # 
VectorTF Size Source # 

Methods

zero :: Size h (VectorTF t f) Source #

basis :: Size h (t -> VectorTF t f) Source #

plus :: Size h (f -> f -> VectorTF t f) Source #

mult :: Size h (Double -> f -> VectorTF t f) Source #

vtfMatch :: Size h (a -> (t -> a) -> (f -> f -> a) -> (Double -> f -> a) -> VectorTF t f -> a) Source #

Int Size Source # 

Methods

int :: Int -> Size h Int Source #

pred :: Size h (Int -> Int) Source #

isZero :: Size h (Int -> Bool) Source #

Bimap Size Source # 

Methods

size :: Size h (Bimap a b -> Int) Source #

lookupL :: (Ord a, Ord b) => Size h (Bimap a b -> a -> Maybe b) Source #

lookupR :: (Ord a, Ord b) => Size h (Bimap a b -> b -> Maybe a) Source #

empty :: Size h (Bimap a b) Source #

singleton :: Size h ((a, b) -> Bimap a b) Source #

toMapL :: Size h (Bimap a b -> Map a b) Source #

toMapR :: Size h (Bimap a b -> Map b a) Source #

insert :: (Ord a, Ord b) => Size h ((a, b) -> Bimap a b -> Bimap a b) Source #

updateL :: (Ord a, Ord b) => Size h ((b -> Maybe b) -> a -> Bimap a b -> Bimap a b) Source #

updateR :: (Ord a, Ord b) => Size h ((a -> Maybe a) -> b -> Bimap a b -> Bimap a b) Source #

Lang Size Source # 

Methods

exfalso :: Size h (Void -> a) Source #

writer :: Size h ((a, w) -> Writer w a) Source #

runWriter :: Size h (Writer w a -> (a, w)) Source #

float2Double :: Size h (Float -> Double) Source #

double2Float :: Size h (Double -> Float) Source #

state :: Size h ((x -> (y, x)) -> State x y) Source #

runState :: Size h (State x y -> x -> (y, x)) Source #

iterate :: Size h ((x -> x) -> x -> [x]) Source #

buildFreeVector :: Ord b => Size h (FreeVectorBuilder b -> FreeVector b Double) Source #

toSVTFBuilder :: Ord b => Size h (VectorTF b Int -> SVTFBuilder b) Source #

get :: Size h (Maybe a -> a) Source #

getVar :: Size h (State x x) Source #

update :: Size h ((x -> x) -> State x ()) Source #

updateWengert :: Size h (Int -> Double -> Map Int Double -> Map Int Double) Source #

vtfCata :: Size h ((VectorTF a b -> b) -> Fix (VectorTF a) -> b) Source #

Monad Size x Source # 

Methods

bind :: Size h (x a -> (a -> x b) -> x b) Source #

join :: Size h (x (x a) -> x a) Source #

Applicative Size x Source # 

Methods

pure :: Size h (x -> x x) Source #

ap :: Size h (x (x -> y) -> x x -> x y) Source #

Functor Size x Source # 

Methods

map :: Size h ((a -> b) -> x a -> x b) Source #

one :: Size h x Source #