tensor-ops-0.1.0.0: Tensor manipulation operations with tensorflow-style automatic differentiation

Safe HaskellNone
LanguageHaskell2010

TensorOps.NatKind

Documentation

class NatKind k where Source #

Minimal complete definition

sFromNat, sSucc

Associated Types

type FromNat (n :: Nat) :: k Source #

type Succ (n :: k) :: k Source #

type IndexN k :: k -> Type Source #

type NonZero (n :: k) :: Constraint Source #

Methods

sFromNat :: Sing (n :: Nat) -> Sing (FromNat n :: k) Source #

sSucc :: Sing (n :: k) -> Sing (Succ n :: k) Source #

Instances

NatKind Nat Source # 

Associated Types

type FromNat Nat (n :: Nat) :: k Source #

type Succ Nat (n :: Nat) :: k Source #

type IndexN Nat :: k -> Type Source #

type NonZero Nat (n :: Nat) :: Constraint Source #

NatKind N Source # 

Associated Types

type FromNat N (n :: Nat) :: k Source #

type Succ N (n :: N) :: k Source #

type IndexN N :: k -> Type Source #

type NonZero N (n :: N) :: Constraint Source #

Methods

sFromNat :: Sing Nat n -> Sing N (FromNat N n) Source #

sSucc :: Sing N n -> Sing N (Succ N n) Source #

withNatKind :: NatKind k => Integer -> (forall n. Sing n -> r) -> r Source #