Tensor data types, and their interaction with Idris. This module contains a number of data types (`Num`, `Eq` etc.) which indicate what operations can be performed on primitive data in the backend. They are entirely distinct from the Idris interfaces `Prelude.Num` etc. but carry largely the same meaning.
data DType : TypeidrisType : DType -> Typedata Num : DType -> Typedata Neg : DType -> TypenegNum : Neg dtype -> Num dtypedata Abs : DType -> TypeabsNum : Abs dtype -> Num dtypedata Integral : DType -> TypeIntegralS32 : Integral S32IntegralS64 : Integral S64IntegralU32 : Integral U32IntegralU64 : Integral U64integralNum : Integral dtype -> Num dtypedata Fractional : DType -> TypeFractional dtype -> Num dtypefractionalNum : Fractional dtype -> Num dtypedata Eq : DType -> Typedata Ord : DType -> TypeordEq : Ord dtype -> Eq dtype