DeepDarkFantasy-0.2017.8.10: A DSL for creating neural network.

Safe HaskellSafe
LanguageHaskell2010

DDF.Vector

Documentation

class Monoid r g => Group r g where Source #

Minimal complete definition

invert | minus

Methods

invert :: r h (g -> g) Source #

minus :: r h (g -> g -> g) Source #

invert :: DBI r => r h (g -> g) Source #

minus :: DBI r => r h (g -> g -> g) Source #

class Group r v => Vector r v where Source #

Minimal complete definition

(mult | divide), toFreeVector

Associated Types

type Basis v :: * Source #

Methods

mult :: r h (Double -> v -> v) Source #

divide :: r h (v -> Double -> v) Source #

mult :: Double r => r h (Double -> v -> v) Source #

divide :: Double r => r h (v -> Double -> v) Source #

toFreeVector :: r h (v -> FreeVector (Basis v) Double) Source #

Instances

Lang repr => ProdCon (Vector repr) l r Source # 

Methods

prodCon :: (Vector repr l, Vector repr r) :- Vector repr (l, r) Source #

minus2 :: (Group r b, DBI r) => r h b -> r h b -> r h b Source #

mult1 :: (Vector r v, DBI r) => r h Double -> r h (v -> v) Source #

mult2 :: (Vector r b, DBI r) => r h Double -> r h b -> r h b Source #

divide2 :: (Vector r b, DBI r) => r h b -> r h Double -> r h b Source #

invert1 :: (Group r b, DBI r) => r h b -> r h b Source #

minus1 :: (Group r a, DBI r) => r h a -> r h (a -> a) Source #

divide1 :: (Vector r a, DBI r) => r h a -> r h (Double -> a) Source #

recip :: (Double r, Vector r Double) => r h (Double -> Double) Source #

recip1 :: (Vector r Double, Double r) => r h Double -> r h Double Source #

toFreeVector1 :: (Vector r a, DBI r) => r h a -> r h (FreeVector (Basis a) Double) Source #