DeepDarkFantasy-0.2017.4.9: A DSL for creating neural network.

Safe HaskellSafe
LanguageHaskell2010

DDF.Prod

Documentation

class DBI r => Prod r where Source #

Minimal complete definition

mkProd, zro, fst

Methods

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

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

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

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

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

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

Instances

Prod Eval Source # 

Methods

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

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

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

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

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

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

Prod Show Source # 

Methods

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

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

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

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

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

uncurry :: Show h ((a -> b -> c) -> (a, b) -> c) 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 #

Prod r => Prod (GWDiff r) Source # 

Methods

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

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

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

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

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

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

Prod r => Prod (ImpW r) Source # 

Methods

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

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

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

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

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

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

Prod r => Prod (UnHOAS r) Source # 

Methods

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

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

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

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

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

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

(Prod l, Prod r) => Prod (Combine l r) Source # 

Methods

mkProd :: Combine l r h (a -> b -> (a, b)) Source #

zro :: Combine l r h ((a, b) -> a) Source #

fst :: Combine l r h ((a, b) -> b) Source #

swap :: Combine l r h ((x, y) -> (y, x)) Source #

curry :: Combine l r h (((a, b) -> c) -> a -> b -> c) Source #

uncurry :: Combine l r h ((a -> b -> c) -> (a, b) -> c) Source #

Prod r => Prod (WDiff r v) Source # 

Methods

mkProd :: WDiff r v h (a -> b -> (a, b)) Source #

zro :: WDiff r v h ((a, b) -> a) Source #

fst :: WDiff r v h ((a, b) -> b) Source #

swap :: WDiff r v h ((x, y) -> (y, x)) Source #

curry :: WDiff r v h (((a, b) -> c) -> a -> b -> c) Source #

uncurry :: WDiff r v h ((a -> b -> c) -> (a, b) -> c) Source #

zro1 :: Prod repr => repr h (b1, b) -> repr h b1 Source #

fst1 :: Prod repr => repr h (a, b) -> repr h b Source #

mkProd1 :: Prod repr => repr h a -> repr h (b -> (a, b)) Source #

mkProd2 :: Prod repr => repr h a1 -> repr h a -> repr h (a1, a) Source #

curry1 :: Prod repr => repr h ((a, b) -> c) -> repr h (a -> b -> c) Source #

module DDF.DBI