Methods
rshape :: forall (n :: Nat) (x :: TK). KnownSTK x => AstRaw s ('TKR2 n x) -> IShR n Source #
rlength :: forall (n :: Nat) (x :: TK). KnownSTK x => AstRaw s ('TKR2 n x) -> Int Source #
rsize :: forall (n :: Nat) (x :: TK). KnownSTK x => AstRaw s ('TKR2 n x) -> Int Source #
rwidth :: forall (n :: Natural) (x :: TK). KnownSTK x => AstRaw s ('TKR2 (1 + n) x) -> Int Source #
sshape :: forall (sh :: [Nat]) (x :: TK). KnownSTK x => AstRaw s ('TKS2 sh x) -> ShS sh Source #
slength :: forall (sh :: [Nat]) (x :: TK). KnownSTK x => AstRaw s ('TKS2 sh x) -> Int Source #
ssize :: forall (sh :: [Nat]) (x :: TK). KnownSTK x => AstRaw s ('TKS2 sh x) -> Int Source #
swidth :: forall (n :: Nat) (sh :: [Nat]) (x :: TK). KnownSTK x => AstRaw s ('TKS2 (n ': sh) x) -> Int Source #
xshape :: forall (sh :: [Maybe Nat]) (x :: TK). KnownSTK x => AstRaw s ('TKX2 sh x) -> IShX sh Source #
xlength :: forall (sh :: [Maybe Nat]) (x :: TK). KnownSTK x => AstRaw s ('TKX2 sh x) -> Int Source #
xsize :: forall (sh :: [Maybe Nat]) (x :: TK). KnownSTK x => AstRaw s ('TKX2 sh x) -> Int Source #
xwidth :: forall (mn :: Maybe Nat) (sh :: [Maybe Nat]) (x :: TK). KnownSTK x => AstRaw s ('TKX2 (mn ': sh) x) -> Int Source #
tsize :: forall (y :: TK). SingletonTK y -> AstRaw s y -> Int Source #
tftk :: forall (y :: TK). SingletonTK y -> AstRaw s y -> FullShapeTK y Source #
tpair :: forall (x :: TK) (z :: TK). AstRaw s x -> AstRaw s z -> AstRaw s ('TKProduct x z) Source #
tproject1 :: forall (x :: TK) (z :: TK). AstRaw s ('TKProduct x z) -> AstRaw s x Source #
tproject2 :: forall (x :: TK) (z :: TK). AstRaw s ('TKProduct x z) -> AstRaw s z Source #
tcond :: forall (y :: TK). Boolean (BoolOf (AstRaw s)) => SingletonTK y -> BoolOf (AstRaw s) -> AstRaw s y -> AstRaw s y -> AstRaw s y Source #
trconcrete :: forall r (n :: Nat). GoodScalar r => Ranked n r -> AstRaw s (TKR n r) Source #
tsconcrete :: forall r (sh :: [Nat]). GoodScalar r => Shaped sh r -> AstRaw s (TKS sh r) Source #
txconcrete :: forall r (sh :: [Maybe Nat]). GoodScalar r => Mixed sh r -> AstRaw s (TKX sh r) Source #
tkconcrete :: GoodScalar r => r -> AstRaw s ('TKScalar r) Source #
tconcrete :: forall (y :: TK). FullShapeTK y -> Concrete y -> AstRaw s y Source #
trfromVector :: forall (n :: Nat) (x :: TK). (KnownNat n, KnownSTK x) => Vector (AstRaw s ('TKR2 n x)) -> AstRaw s ('TKR2 (1 + n) x) Source #
trfromVector0N :: forall (n :: Nat) (x :: TK). KnownSTK x => IShR n -> Vector (AstRaw s ('TKR2 0 x)) -> AstRaw s ('TKR2 n x) Source #
trunravelToList :: forall (n :: Nat) (x :: TK). (KnownNat n, KnownSTK x) => AstRaw s ('TKR2 (1 + n) x) -> [AstRaw s ('TKR2 n x)] Source #
tsfromVector :: forall (n :: Nat) (sh :: [Nat]) (x :: TK). (KnownNat n, KnownShS sh, KnownSTK x) => Vector (AstRaw s ('TKS2 sh x)) -> AstRaw s ('TKS2 (n ': sh) x) Source #
tsfromVector0N :: forall (sh :: [Nat]) (x :: TK). (KnownShS sh, KnownSTK x) => Vector (AstRaw s ('TKS2 ('[] :: [Nat]) x)) -> AstRaw s ('TKS2 sh x) Source #
tsunravelToList :: forall (n :: Nat) (sh :: [Nat]) (x :: TK). (KnownNat n, KnownShS sh, KnownSTK x) => AstRaw s ('TKS2 (n ': sh) x) -> [AstRaw s ('TKS2 sh x)] Source #
txfromVector :: forall (n :: Nat) (sh :: [Maybe Nat]) (x :: TK). (KnownNat n, KnownShX sh, KnownSTK x) => Vector (AstRaw s ('TKX2 sh x)) -> AstRaw s ('TKX2 ('Just n ': sh) x) Source #
txfromVector0N :: forall (sh :: [Maybe Nat]) (x :: TK). KnownSTK x => IShX sh -> Vector (AstRaw s ('TKX2 ('[] :: [Maybe Nat]) x)) -> AstRaw s ('TKX2 sh x) Source #
txunravelToList :: forall (n :: Nat) (sh :: [Maybe Nat]) (x :: TK). (KnownNat n, KnownShX sh, KnownSTK x) => AstRaw s ('TKX2 ('Just n ': sh) x) -> [AstRaw s ('TKX2 sh x)] Source #
tfromVector :: forall (y :: TK) (k :: Nat). SNat k -> SingletonTK y -> Vector (AstRaw s y) -> AstRaw s (BuildTensorKind k y) Source #
tfromListR :: forall (y :: TK) (k :: Nat). SingletonTK y -> ListR k (AstRaw s y) -> AstRaw s (BuildTensorKind k y) Source #
trsum :: forall (n :: Nat) (x :: TK). (KnownNat n, KnownSTK x) => AstRaw s ('TKR2 (1 + n) x) -> AstRaw s ('TKR2 n x) Source #
trsum0 :: forall (n :: Nat) (x :: TK). (KnownNat n, KnownSTK x) => AstRaw s ('TKR2 n x) -> AstRaw s ('TKR2 0 x) Source #
trdot0 :: forall (n :: Nat) r. (KnownNat n, GoodScalar r) => AstRaw s (TKR n r) -> AstRaw s (TKR n r) -> AstRaw s (TKR 0 r) Source #
trdot1In :: forall (n :: Nat) r. (KnownNat n, GoodScalar r) => AstRaw s (TKR (1 + n) r) -> AstRaw s (TKR (1 + n) r) -> AstRaw s (TKR n r) Source #
trmatvecmul :: GoodScalar r => AstRaw s (TKR 2 r) -> AstRaw s (TKR 1 r) -> AstRaw s (TKR 1 r) Source #
trmatmul2 :: GoodScalar r => AstRaw s (TKR 2 r) -> AstRaw s (TKR 2 r) -> AstRaw s (TKR 2 r) Source #
trreplicate :: forall (n :: Nat) (x :: TK). (KnownNat n, KnownSTK x) => Int -> AstRaw s ('TKR2 n x) -> AstRaw s ('TKR2 (1 + n) x) Source #
trreplicate0N :: forall (n :: Nat) (x :: TK). (KnownNat n, KnownSTK x) => IShR n -> AstRaw s ('TKR2 0 x) -> AstRaw s ('TKR2 n x) Source #
tssum :: forall (n :: Nat) (sh :: [Nat]) (x :: TK). (KnownNat n, KnownShS sh, KnownSTK x) => AstRaw s ('TKS2 (n ': sh) x) -> AstRaw s ('TKS2 sh x) Source #
tssum0 :: forall (sh :: [Nat]) (x :: TK). (KnownShS sh, KnownSTK x) => AstRaw s ('TKS2 sh x) -> AstRaw s ('TKS2 ('[] :: [Nat]) x) Source #
tsdot0 :: forall (sh :: [Nat]) r. (KnownShS sh, GoodScalar r) => AstRaw s (TKS sh r) -> AstRaw s (TKS sh r) -> AstRaw s (TKS ('[] :: [Nat]) r) Source #
tsdot1In :: forall (sh :: [Nat]) r (n :: Nat). (KnownShS sh, GoodScalar r) => SNat n -> AstRaw s (TKS (sh ++ '[n]) r) -> AstRaw s (TKS (sh ++ '[n]) r) -> AstRaw s (TKS sh r) Source #
tsmatvecmul :: forall (m :: Nat) (n :: Nat) r. (KnownNat m, KnownNat n, GoodScalar r) => AstRaw s (TKS '[m, n] r) -> AstRaw s (TKS '[n] r) -> AstRaw s (TKS '[m] r) Source #
tsmatmul2 :: forall (m :: Nat) (n :: Nat) (p :: Nat) r. (KnownNat m, KnownNat n, KnownNat p, GoodScalar r) => AstRaw s (TKS '[m, n] r) -> AstRaw s (TKS '[n, p] r) -> AstRaw s (TKS '[m, p] r) Source #
tsreplicate :: forall (sh :: [Nat]) (k :: Nat) (x :: TK). KnownSTK x => SNat k -> ShS sh -> AstRaw s ('TKS2 sh x) -> AstRaw s ('TKS2 (k ': sh) x) Source #
tsreplicate0N :: forall (sh :: [Nat]) (x :: TK). KnownSTK x => ShS sh -> AstRaw s ('TKS2 ('[] :: [Nat]) x) -> AstRaw s ('TKS2 sh x) Source #
txsum :: forall (n :: Nat) (sh :: [Maybe Nat]) (x :: TK). (KnownNat n, KnownShX sh, KnownSTK x) => AstRaw s ('TKX2 ('Just n ': sh) x) -> AstRaw s ('TKX2 sh x) Source #
txsum0 :: forall (sh :: [Maybe Nat]) (x :: TK). (KnownShX sh, KnownSTK x, ConvertTensor (AstRaw s)) => AstRaw s ('TKX2 sh x) -> AstRaw s ('TKX2 ('[] :: [Maybe Nat]) x) Source #
txdot0 :: forall (sh :: [Maybe Nat]) r. (KnownShX sh, GoodScalar r, ConvertTensor (AstRaw s)) => AstRaw s (TKX sh r) -> AstRaw s (TKX sh r) -> AstRaw s (TKX ('[] :: [Maybe Nat]) r) Source #
txdot1In :: forall (sh :: [Maybe Nat]) r (n :: Nat). (KnownShX sh, GoodScalar r) => SNat n -> AstRaw s (TKX (sh ++ '['Just n]) r) -> AstRaw s (TKX (sh ++ '['Just n]) r) -> AstRaw s (TKX sh r) Source #
txmatvecmul :: forall (mm :: Maybe Nat) (mn :: Maybe Nat) r. (GoodScalar r, ConvertTensor (AstRaw s)) => SMayNat Int SNat mm -> SMayNat Int SNat mn -> AstRaw s (TKX '[mm, mn] r) -> AstRaw s (TKX '[mn] r) -> AstRaw s (TKX '[mm] r) Source #
txmatmul2 :: forall (m :: Nat) (n :: Nat) (p :: Nat) r. (KnownNat m, KnownNat n, KnownNat p, GoodScalar r, ConvertTensor (AstRaw s)) => AstRaw s (TKX '['Just m, 'Just n] r) -> AstRaw s (TKX '['Just n, 'Just p] r) -> AstRaw s (TKX '['Just m, 'Just p] r) Source #
txreplicate :: forall (sh :: [Maybe Nat]) (k :: Nat) (x :: TK). KnownSTK x => SNat k -> StaticShX sh -> AstRaw s ('TKX2 sh x) -> AstRaw s ('TKX2 ('Just k ': sh) x) Source #
txreplicate0N :: forall (sh :: [Maybe Nat]) (x :: TK). (KnownShX sh, KnownSTK x) => IShX sh -> AstRaw s ('TKX2 ('[] :: [Maybe Nat]) x) -> AstRaw s ('TKX2 sh x) Source #
trindex :: forall (m :: Nat) (n :: Nat) (x :: TK). (KnownNat m, KnownNat n, KnownSTK x) => AstRaw s ('TKR2 (m + n) x) -> IxROf (AstRaw s) m -> AstRaw s ('TKR2 n x) Source #
trindex0 :: forall (m :: Nat) (x :: TK). (KnownNat m, KnownSTK x) => AstRaw s ('TKR2 m x) -> IxROf (AstRaw s) m -> AstRaw s ('TKR2 0 x) Source #
troneHot :: forall (m :: Nat) (n :: Nat) (x :: TK). (KnownNat m, KnownNat n, KnownSTK x, BoolOf (PrimalOf (AstRaw s)) ~ BoolOf (AstRaw s), EqH (PrimalOf (AstRaw s)) ('TKScalar Int64)) => IShR m -> AstRaw s ('TKR2 n x) -> IxROf (AstRaw s) m -> AstRaw s ('TKR2 (m + n) x) Source #
trscatter :: forall (m :: Nat) (n :: Nat) (p :: Nat) (x :: TK). (KnownNat m, KnownNat n, KnownNat p, KnownSTK x) => IShR (p + n) -> AstRaw s ('TKR2 (m + n) x) -> (IxROf (AstRaw s) m -> IxROf (AstRaw s) p) -> AstRaw s ('TKR2 (p + n) x) Source #
trscatter1 :: forall (n :: Nat) (p :: Nat) (x :: TK). (KnownNat n, KnownNat p, KnownSTK x) => IShR (p + n) -> AstRaw s ('TKR2 (1 + n) x) -> (IntOf (AstRaw s) -> IxROf (AstRaw s) p) -> AstRaw s ('TKR2 (p + n) x) Source #
trgather :: forall (m :: Nat) (n :: Nat) (p :: Nat) (x :: TK). (KnownNat m, KnownNat n, KnownNat p, KnownSTK x) => IShR (m + n) -> AstRaw s ('TKR2 (p + n) x) -> (IxROf (AstRaw s) m -> IxROf (AstRaw s) p) -> AstRaw s ('TKR2 (m + n) x) Source #
trgather1 :: forall (n :: Nat) (p :: Nat) (x :: TK). (KnownNat n, KnownNat p, KnownSTK x) => Int -> AstRaw s ('TKR2 (p + n) x) -> (IntOf (AstRaw s) -> IxROf (AstRaw s) p) -> AstRaw s ('TKR2 (1 + n) x) Source #
tsindex :: forall (shm :: [Nat]) (shn :: [Nat]) (x :: TK). (KnownShS shm, KnownShS shn, KnownSTK x) => AstRaw s ('TKS2 (shm ++ shn) x) -> IxSOf (AstRaw s) shm -> AstRaw s ('TKS2 shn x) Source #
tsindex0 :: forall (sh1 :: [Nat]) (x :: TK). (KnownShS sh1, KnownSTK x) => AstRaw s ('TKS2 sh1 x) -> IxSOf (AstRaw s) sh1 -> AstRaw s ('TKS2 ('[] :: [Nat]) x) Source #
tsoneHot :: forall (sh1 :: [Nat]) (sh2 :: [Nat]) (x :: TK). (KnownShS sh1, KnownShS sh2, KnownSTK x, BoolOf (PrimalOf (AstRaw s)) ~ BoolOf (AstRaw s), EqH (PrimalOf (AstRaw s)) ('TKScalar Int64)) => AstRaw s ('TKS2 sh2 x) -> IxSOf (AstRaw s) sh1 -> AstRaw s ('TKS2 (sh1 ++ sh2) x) Source #
tsscatter :: forall (shm :: [Nat]) (shn :: [Nat]) (shp :: [Nat]) (x :: TK). (KnownShS shm, KnownShS shn, KnownShS shp, KnownSTK x) => AstRaw s ('TKS2 (shm ++ shn) x) -> (IxSOf (AstRaw s) shm -> IxSOf (AstRaw s) shp) -> AstRaw s ('TKS2 (shp ++ shn) x) Source #
tsscatter1 :: forall (n2 :: Nat) (shn :: [Nat]) (shp :: [Nat]) (x :: TK). (KnownNat n2, KnownShS shn, KnownShS shp, KnownSTK x) => AstRaw s ('TKS2 (n2 ': shn) x) -> (IntOf (AstRaw s) -> IxSOf (AstRaw s) shp) -> AstRaw s ('TKS2 (shp ++ shn) x) Source #
tsgather :: forall (shm :: [Nat]) (shn :: [Nat]) (shp :: [Nat]) (x :: TK). (KnownShS shm, KnownShS shn, KnownShS shp, KnownSTK x) => AstRaw s ('TKS2 (shp ++ shn) x) -> (IxSOf (AstRaw s) shm -> IxSOf (AstRaw s) shp) -> AstRaw s ('TKS2 (shm ++ shn) x) Source #
tsgather1 :: forall (n2 :: Nat) (shn :: [Nat]) (shp :: [Nat]) (x :: TK). (KnownNat n2, KnownShS shn, KnownShS shp, KnownSTK x) => AstRaw s ('TKS2 (shp ++ shn) x) -> (IntOf (AstRaw s) -> IxSOf (AstRaw s) shp) -> AstRaw s ('TKS2 (n2 ': shn) x) Source #
txindex :: forall (sh1 :: [Maybe Nat]) (sh2 :: [Maybe Nat]) (x :: TK). (KnownShX sh1, KnownShX sh2, KnownSTK x) => AstRaw s ('TKX2 (sh1 ++ sh2) x) -> IxXOf (AstRaw s) sh1 -> AstRaw s ('TKX2 sh2 x) Source #
txindex0 :: forall (sh1 :: [Maybe Nat]) (x :: TK). (KnownShX sh1, KnownSTK x) => AstRaw s ('TKX2 sh1 x) -> IxXOf (AstRaw s) sh1 -> AstRaw s ('TKX2 ('[] :: [Maybe Nat]) x) Source #
txoneHot :: forall (sh1 :: [Maybe Nat]) (sh2 :: [Maybe Nat]) (x :: TK). (KnownShX sh1, KnownShX sh2, KnownSTK x, BoolOf (PrimalOf (AstRaw s)) ~ BoolOf (AstRaw s), EqH (PrimalOf (AstRaw s)) ('TKScalar Int64), ConvertTensor (AstRaw s)) => IShX sh1 -> AstRaw s ('TKX2 sh2 x) -> IxXOf (AstRaw s) sh1 -> AstRaw s ('TKX2 (sh1 ++ sh2) x) Source #
txscatter :: forall (shm :: [Maybe Nat]) (shn :: [Maybe Nat]) (shp :: [Maybe Nat]) (x :: TK). (KnownShX shm, KnownShX shn, KnownShX shp, KnownSTK x) => IShX (shp ++ shn) -> AstRaw s ('TKX2 (shm ++ shn) x) -> (IxXOf (AstRaw s) shm -> IxXOf (AstRaw s) shp) -> AstRaw s ('TKX2 (shp ++ shn) x) Source #
txscatter1 :: forall (n2 :: Nat) (shn :: [Maybe Nat]) (shp :: [Maybe Nat]) (x :: TK). (KnownNat n2, KnownShX shn, KnownShX shp, KnownSTK x) => IShX (shp ++ shn) -> AstRaw s ('TKX2 ('Just n2 ': shn) x) -> (IntOf (AstRaw s) -> IxXOf (AstRaw s) shp) -> AstRaw s ('TKX2 (shp ++ shn) x) Source #
txgather :: forall (shm :: [Maybe Nat]) (shn :: [Maybe Nat]) (shp :: [Maybe Nat]) (x :: TK). (KnownShX shm, KnownShX shn, KnownShX shp, KnownSTK x) => IShX (shm ++ shn) -> AstRaw s ('TKX2 (shp ++ shn) x) -> (IxXOf (AstRaw s) shm -> IxXOf (AstRaw s) shp) -> AstRaw s ('TKX2 (shm ++ shn) x) Source #
txgather1 :: forall (n2 :: Nat) (shn :: [Maybe Nat]) (shp :: [Maybe Nat]) (x :: TK). (KnownNat n2, KnownShX shn, KnownShX shp, KnownSTK x) => SNat n2 -> AstRaw s ('TKX2 (shp ++ shn) x) -> (IntOf (AstRaw s) -> IxXOf (AstRaw s) shp) -> AstRaw s ('TKX2 ('Just n2 ': shn) x) Source #
trfloor :: forall r r2 (n :: Nat). (GoodScalar r, RealFrac r, GoodScalar r2, Integral r2) => AstRaw s (TKR n r) -> AstRaw s (TKR n r2) Source #
trfromIntegral :: forall r1 r2 (n :: Nat). (GoodScalar r1, Integral r1, GoodScalar r2) => AstRaw s (TKR n r1) -> AstRaw s (TKR n r2) Source #
trcast :: forall r1 r2 (n :: Nat). (RealFrac r1, GoodScalar r1, RealFrac r2, GoodScalar r2) => AstRaw s (TKR n r1) -> AstRaw s (TKR n r2) Source #
trminIndex :: forall (n :: Natural) r r2. (GoodScalar r, GoodScalar r2) => AstRaw s (TKR (1 + n) r) -> AstRaw s (TKR n r2) Source #
trmaxIndex :: forall (n :: Natural) r r2. (GoodScalar r, GoodScalar r2) => AstRaw s (TKR (1 + n) r) -> AstRaw s (TKR n r2) Source #
triota :: GoodScalar r => Int -> AstRaw s (TKR 1 r) Source #
tsfloor :: forall r r2 (sh :: [Nat]). (GoodScalar r, RealFrac r, GoodScalar r2, Integral r2) => AstRaw s (TKS sh r) -> AstRaw s (TKS sh r2) Source #
tsfromIntegral :: forall r1 r2 (sh :: [Nat]). (GoodScalar r1, Integral r1, GoodScalar r2) => AstRaw s (TKS sh r1) -> AstRaw s (TKS sh r2) Source #
tscast :: forall r1 r2 (sh :: [Nat]). (RealFrac r1, GoodScalar r1, RealFrac r2, GoodScalar r2) => AstRaw s (TKS sh r1) -> AstRaw s (TKS sh r2) Source #
tsminIndex :: forall (n :: Nat) (sh :: [Nat]) r r2. (GoodScalar r, GoodScalar r2) => AstRaw s (TKS (n ': sh) r) -> AstRaw s (TKS (Init (n ': sh)) r2) Source #
tsmaxIndex :: forall (n :: Nat) (sh :: [Nat]) r r2. (GoodScalar r, GoodScalar r2) => AstRaw s (TKS (n ': sh) r) -> AstRaw s (TKS (Init (n ': sh)) r2) Source #
tsiota :: forall (n :: Nat) r. (KnownNat n, GoodScalar r) => AstRaw s (TKS '[n] r) Source #
txfloor :: forall r r2 (sh :: [Maybe Nat]). (GoodScalar r, RealFrac r, GoodScalar r2, Integral r2) => AstRaw s (TKX sh r) -> AstRaw s (TKX sh r2) Source #
txfromIntegral :: forall r1 r2 (sh :: [Maybe Nat]). (GoodScalar r1, Integral r1, GoodScalar r2) => AstRaw s (TKX sh r1) -> AstRaw s (TKX sh r2) Source #
txcast :: forall r1 r2 (sh :: [Maybe Nat]). (RealFrac r1, GoodScalar r1, RealFrac r2, GoodScalar r2) => AstRaw s (TKX sh r1) -> AstRaw s (TKX sh r2) Source #
txminIndex :: forall (mn :: Maybe Nat) (sh :: [Maybe Nat]) r r2. (GoodScalar r, GoodScalar r2) => AstRaw s (TKX (mn ': sh) r) -> AstRaw s (TKX (Init (mn ': sh)) r2) Source #
txmaxIndex :: forall (mn :: Maybe Nat) (sh :: [Maybe Nat]) r r2. (GoodScalar r, GoodScalar r2) => AstRaw s (TKX (mn ': sh) r) -> AstRaw s (TKX (Init (mn ': sh)) r2) Source #
txiota :: forall (n :: Nat) r. (KnownNat n, GoodScalar r) => AstRaw s (TKX '['Just n] r) Source #
tkfloor :: (GoodScalar r, RealFrac r, GoodScalar r2, Integral r2) => AstRaw s ('TKScalar r) -> AstRaw s ('TKScalar r2) Source #
tkfromIntegral :: (GoodScalar r1, Integral r1, GoodScalar r2) => AstRaw s ('TKScalar r1) -> AstRaw s ('TKScalar r2) Source #
tkcast :: (RealFrac r1, GoodScalar r1, RealFrac r2, GoodScalar r2) => AstRaw s ('TKScalar r1) -> AstRaw s ('TKScalar r2) Source #
trappend :: forall (n :: Natural) (x :: TK). KnownSTK x => AstRaw s ('TKR2 (1 + n) x) -> AstRaw s ('TKR2 (1 + n) x) -> AstRaw s ('TKR2 (1 + n) x) Source #
trslice :: forall (n :: Natural) (x :: TK). KnownSTK x => Int -> Int -> AstRaw s ('TKR2 (1 + n) x) -> AstRaw s ('TKR2 (1 + n) x) Source #
trreverse :: forall (n :: Natural) (x :: TK). KnownSTK x => AstRaw s ('TKR2 (1 + n) x) -> AstRaw s ('TKR2 (1 + n) x) Source #
trtranspose :: forall (n :: Nat) (x :: TK). KnownSTK x => PermR -> AstRaw s ('TKR2 n x) -> AstRaw s ('TKR2 n x) Source #
trreshape :: forall (n :: Nat) (m :: Nat) (x :: TK). KnownSTK x => IShR m -> AstRaw s ('TKR2 n x) -> AstRaw s ('TKR2 m x) Source #
tsappend :: forall (m :: Nat) (n :: Nat) (sh :: [Nat]) (x :: TK). KnownSTK x => AstRaw s ('TKS2 (m ': sh) x) -> AstRaw s ('TKS2 (n ': sh) x) -> AstRaw s ('TKS2 ((m + n) ': sh) x) Source #
tsslice :: forall (i :: Nat) (n :: Nat) (k :: Nat) (sh :: [Natural]) (x :: TK). KnownSTK x => SNat i -> SNat n -> SNat k -> AstRaw s ('TKS2 (((i + n) + k) ': sh) x) -> AstRaw s ('TKS2 (n ': sh) x) Source #
tsreverse :: forall (n :: Nat) (sh :: [Nat]) (x :: TK). KnownSTK x => AstRaw s ('TKS2 (n ': sh) x) -> AstRaw s ('TKS2 (n ': sh) x) Source #
tstranspose :: forall (perm :: [Natural]) (sh :: [Nat]) (x :: TK). (IsPermutation perm, Rank perm <= Rank sh, KnownSTK x) => Perm perm -> AstRaw s ('TKS2 sh x) -> AstRaw s ('TKS2 (PermutePrefix perm sh) x) Source #
tsreshape :: forall (sh :: [Natural]) (sh2 :: [Natural]) (x :: TK). (Product sh ~ Product sh2, KnownSTK x) => ShS sh2 -> AstRaw s ('TKS2 sh x) -> AstRaw s ('TKS2 sh2 x) Source #
txappend :: forall (m :: Nat) (n :: Nat) (sh :: [Maybe Nat]) (x :: TK). KnownSTK x => AstRaw s ('TKX2 ('Just m ': sh) x) -> AstRaw s ('TKX2 ('Just n ': sh) x) -> AstRaw s ('TKX2 ('Just (m + n) ': sh) x) Source #
txslice :: forall (i :: Nat) (n :: Nat) (k :: Nat) (sh :: [Maybe Natural]) (x :: TK). KnownSTK x => SNat i -> SNat n -> SNat k -> AstRaw s ('TKX2 ('Just ((i + n) + k) ': sh) x) -> AstRaw s ('TKX2 ('Just n ': sh) x) Source #
txreverse :: forall (mn :: Maybe Nat) (sh :: [Maybe Nat]) (x :: TK). KnownSTK x => AstRaw s ('TKX2 (mn ': sh) x) -> AstRaw s ('TKX2 (mn ': sh) x) Source #
txtranspose :: forall (perm :: [Natural]) (sh :: [Maybe Nat]) (x :: TK). (IsPermutation perm, Rank perm <= Rank sh, KnownSTK x) => Perm perm -> AstRaw s ('TKX2 sh x) -> AstRaw s ('TKX2 (PermutePrefix perm sh) x) Source #
txreshape :: forall (sh :: [Maybe Nat]) (sh2 :: [Maybe Nat]) (x :: TK). KnownSTK x => IShX sh2 -> AstRaw s ('TKX2 sh x) -> AstRaw s ('TKX2 sh2 x) Source #
trbuild1 :: forall (n :: Nat) (x :: TK). (KnownNat n, KnownSTK x) => Int -> (IntOf (AstRaw s) -> AstRaw s ('TKR2 n x)) -> AstRaw s ('TKR2 (1 + n) x) Source #
trmap0N :: forall (n :: Nat) (x :: TK) (x1 :: TK). (KnownNat n, KnownSTK x, KnownSTK x1) => (AstRaw s ('TKR2 0 x1) -> AstRaw s ('TKR2 0 x)) -> AstRaw s ('TKR2 n x1) -> AstRaw s ('TKR2 n x) Source #
trzipWith0N :: forall (n :: Nat) (x :: TK) (x1 :: TK) (x2 :: TK). (KnownNat n, KnownSTK x, KnownSTK x1, KnownSTK x2) => (AstRaw s ('TKR2 0 x1) -> AstRaw s ('TKR2 0 x2) -> AstRaw s ('TKR2 0 x)) -> AstRaw s ('TKR2 n x1) -> AstRaw s ('TKR2 n x2) -> AstRaw s ('TKR2 n x) Source #
tsbuild1 :: forall (k :: Nat) (sh :: [Nat]) (x :: TK). (KnownNat k, KnownShS sh, KnownSTK x) => (IntOf (AstRaw s) -> AstRaw s ('TKS2 sh x)) -> AstRaw s ('TKS2 (k ': sh) x) Source #
tsmap0N :: forall (sh :: [Nat]) (x :: TK) (x1 :: TK). (KnownShS sh, KnownSTK x, KnownSTK x1) => (AstRaw s ('TKS2 ('[] :: [Nat]) x1) -> AstRaw s ('TKS2 ('[] :: [Nat]) x)) -> AstRaw s ('TKS2 sh x1) -> AstRaw s ('TKS2 sh x) Source #
tszipWith0N :: forall (sh :: [Nat]) (x :: TK) (x1 :: TK) (x2 :: TK). (KnownShS sh, KnownSTK x, KnownSTK x1, KnownSTK x2) => (AstRaw s ('TKS2 ('[] :: [Nat]) x1) -> AstRaw s ('TKS2 ('[] :: [Nat]) x2) -> AstRaw s ('TKS2 ('[] :: [Nat]) x)) -> AstRaw s ('TKS2 sh x1) -> AstRaw s ('TKS2 sh x2) -> AstRaw s ('TKS2 sh x) Source #
txbuild1 :: forall (k :: Nat) (sh :: [Maybe Nat]) (x :: TK). (KnownNat k, KnownShX sh, KnownSTK x) => (IntOf (AstRaw s) -> AstRaw s ('TKX2 sh x)) -> AstRaw s ('TKX2 ('Just k ': sh) x) Source #
tbuild1 :: forall (y :: TK) (k :: Nat). ConvertTensor (AstRaw s) => SNat k -> SingletonTK y -> (IntOf (AstRaw s) -> AstRaw s y) -> AstRaw s (BuildTensorKind k y) Source #
tmapAccumRDer :: forall (accy :: TK) (by :: TK) (ey :: TK) (k :: Nat). Proxy (AstRaw s) -> SNat k -> FullShapeTK accy -> FullShapeTK by -> FullShapeTK ey -> HFunOf (AstRaw s) ('TKProduct accy ey) ('TKProduct accy by) -> HFunOf (AstRaw s) ('TKProduct (ADTensorKind ('TKProduct accy ey)) ('TKProduct accy ey)) (ADTensorKind ('TKProduct accy by)) -> HFunOf (AstRaw s) ('TKProduct (ADTensorKind ('TKProduct accy by)) ('TKProduct accy ey)) (ADTensorKind ('TKProduct accy ey)) -> AstRaw s accy -> AstRaw s (BuildTensorKind k ey) -> AstRaw s ('TKProduct accy (BuildTensorKind k by)) Source #
tmapAccumLDer :: forall (accy :: TK) (by :: TK) (ey :: TK) (k :: Nat). Proxy (AstRaw s) -> SNat k -> FullShapeTK accy -> FullShapeTK by -> FullShapeTK ey -> HFunOf (AstRaw s) ('TKProduct accy ey) ('TKProduct accy by) -> HFunOf (AstRaw s) ('TKProduct (ADTensorKind ('TKProduct accy ey)) ('TKProduct accy ey)) (ADTensorKind ('TKProduct accy by)) -> HFunOf (AstRaw s) ('TKProduct (ADTensorKind ('TKProduct accy by)) ('TKProduct accy ey)) (ADTensorKind ('TKProduct accy ey)) -> AstRaw s accy -> AstRaw s (BuildTensorKind k ey) -> AstRaw s ('TKProduct accy (BuildTensorKind k by)) Source #
tApply :: forall (x :: TK) (z :: TK). HFunOf (AstRaw s) x z -> AstRaw s x -> AstRaw s z Source #
tlambda :: forall (x :: TK) (z :: TK). FullShapeTK x -> HFun x z -> HFunOf (AstRaw s) x z Source #
tgrad :: forall (x :: TK) r. FullShapeTK x -> HFun x ('TKScalar r) -> HFunOf (AstRaw s) x (ADTensorKind x) Source #
tvjp :: forall (x :: TK) (z :: TK). FullShapeTK x -> HFun x z -> HFunOf (AstRaw s) ('TKProduct (ADTensorKind z) x) (ADTensorKind x) Source #
tjvp :: forall (x :: TK) (z :: TK). FullShapeTK x -> HFun x z -> HFunOf (AstRaw s) ('TKProduct (ADTensorKind x) x) (ADTensorKind z) Source #
tprimalPart :: forall (y :: TK). AstRaw s y -> PrimalOf (AstRaw s) y Source #
tdualPart :: forall (y :: TK). SingletonTK y -> AstRaw s y -> DualOf (AstRaw s) y Source #
tfromPrimal :: forall (y :: TK). SingletonTK y -> PrimalOf (AstRaw s) y -> AstRaw s y Source #
tfromDual :: forall (y :: TK). DualOf (AstRaw s) y -> AstRaw s y Source #
tScale :: forall (y :: TK). (Num (AstRaw s y), Num (PrimalOf (AstRaw s) y)) => SingletonTK y -> PrimalOf (AstRaw s) y -> DualOf (AstRaw s) y -> DualOf (AstRaw s) y Source #
tsum :: forall (z :: TK) (k :: Nat). ConvertTensor (AstRaw s) => SNat k -> SingletonTK z -> AstRaw s (BuildTensorKind k z) -> AstRaw s z Source #
treplicate :: forall (z :: TK) (k :: Nat). ConvertTensor (AstRaw s) => SNat k -> SingletonTK z -> AstRaw s z -> AstRaw s (BuildTensorKind k z) Source #
tindexBuild :: forall (z :: TK) (k :: Nat). ConvertTensor (AstRaw s) => SNat k -> SingletonTK z -> AstRaw s (BuildTensorKind k z) -> IntOf (AstRaw s) -> AstRaw s z Source #
treplTarget :: forall (y :: TK). (forall r. GoodScalar r => r) -> FullShapeTK y -> AstRaw s y Source #
tdefTarget :: forall (y :: TK). FullShapeTK y -> AstRaw s y Source #
taddTarget :: forall (y :: TK). SingletonTK y -> AstRaw s y -> AstRaw s y -> AstRaw s y Source #
tmultTarget :: forall (y :: TK). SingletonTK y -> AstRaw s y -> AstRaw s y -> AstRaw s y Source #
tsum0Target :: forall (y :: TK). FullShapeTK y -> AstRaw s y -> AstRaw s ('TKScalar Double) Source #
tdot0Target :: forall (y :: TK). FullShapeTK y -> AstRaw s y -> AstRaw s y -> AstRaw s ('TKScalar Double) Source #
xmcast :: forall (x :: TK) (sh :: [Maybe Nat]) (sh2 :: [Maybe Nat]). (KnownSTK x, KnownShX sh, Rank sh ~ Rank sh2, ConvertTensor (AstRaw s)) => StaticShX sh2 -> AstRaw s ('TKX2 sh x) -> AstRaw s ('TKX2 sh2 x) Source #