
-- generated by using spec/Declarations.yaml

{-# LANGUAGE DataKinds #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE QuasiQuotes #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE OverloadedStrings #-}

module Torch.Internal.Managed.Native.Native3 where


import Foreign.C.String
import Foreign.C.Types
import Foreign
import Torch.Internal.Type
import Torch.Internal.Class
import Torch.Internal.Cast
import Torch.Internal.Objects
import qualified Torch.Internal.Unmanaged.Native.Native3 as Unmanaged


xlogy_ts
  :: ForeignPtr Tensor
  -> ForeignPtr Scalar
  -> IO (ForeignPtr Tensor)
xlogy_ts = _cast2 Unmanaged.xlogy_ts

xlogy__tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
xlogy__tt = _cast2 Unmanaged.xlogy__tt

xlogy__ts
  :: ForeignPtr Tensor
  -> ForeignPtr Scalar
  -> IO (ForeignPtr Tensor)
xlogy__ts = _cast2 Unmanaged.xlogy__ts

xlogy_out_ttt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
xlogy_out_ttt = _cast3 Unmanaged.xlogy_out_ttt

xlogy_out_tst
  :: ForeignPtr Tensor
  -> ForeignPtr Scalar
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
xlogy_out_tst = _cast3 Unmanaged.xlogy_out_tst

xlogy_out_tts
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Scalar
  -> IO (ForeignPtr Tensor)
xlogy_out_tts = _cast3 Unmanaged.xlogy_out_tts

logspace_ssldo
  :: ForeignPtr Scalar
  -> ForeignPtr Scalar
  -> Int64
  -> CDouble
  -> ForeignPtr TensorOptions
  -> IO (ForeignPtr Tensor)
logspace_ssldo = _cast5 Unmanaged.logspace_ssldo

logspace_ssld
  :: ForeignPtr Scalar
  -> ForeignPtr Scalar
  -> Int64
  -> CDouble
  -> IO (ForeignPtr Tensor)
logspace_ssld = _cast4 Unmanaged.logspace_ssld

logspace_ssl
  :: ForeignPtr Scalar
  -> ForeignPtr Scalar
  -> Int64
  -> IO (ForeignPtr Tensor)
logspace_ssl = _cast3 Unmanaged.logspace_ssl

logspace_out_tssld
  :: ForeignPtr Tensor
  -> ForeignPtr Scalar
  -> ForeignPtr Scalar
  -> Int64
  -> CDouble
  -> IO (ForeignPtr Tensor)
logspace_out_tssld = _cast5 Unmanaged.logspace_out_tssld

logspace_out_tssl
  :: ForeignPtr Tensor
  -> ForeignPtr Scalar
  -> ForeignPtr Scalar
  -> Int64
  -> IO (ForeignPtr Tensor)
logspace_out_tssl = _cast4 Unmanaged.logspace_out_tssl

log_softmax_tls
  :: ForeignPtr Tensor
  -> Int64
  -> ScalarType
  -> IO (ForeignPtr Tensor)
log_softmax_tls = _cast3 Unmanaged.log_softmax_tls

log_softmax_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
log_softmax_tl = _cast2 Unmanaged.log_softmax_tl

log_softmax_out_ttls
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> ScalarType
  -> IO (ForeignPtr Tensor)
log_softmax_out_ttls = _cast4 Unmanaged.log_softmax_out_ttls

log_softmax_out_ttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
log_softmax_out_ttl = _cast3 Unmanaged.log_softmax_out_ttl

log_softmax_tns
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> ScalarType
  -> IO (ForeignPtr Tensor)
log_softmax_tns = _cast3 Unmanaged.log_softmax_tns

log_softmax_tn
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr Tensor)
log_softmax_tn = _cast2 Unmanaged.log_softmax_tn

_log_softmax_tlb
  :: ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr Tensor)
_log_softmax_tlb = _cast3 Unmanaged._log_softmax_tlb

_log_softmax_out_ttlb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr Tensor)
_log_softmax_out_ttlb = _cast4 Unmanaged._log_softmax_out_ttlb

_log_softmax_backward_data_ttls
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> ScalarType
  -> IO (ForeignPtr Tensor)
_log_softmax_backward_data_ttls = _cast4 Unmanaged._log_softmax_backward_data_ttls

_log_softmax_backward_data_out_tttls
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> ScalarType
  -> IO (ForeignPtr Tensor)
_log_softmax_backward_data_out_tttls = _cast5 Unmanaged._log_softmax_backward_data_out_tttls

_logcumsumexp_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
_logcumsumexp_tl = _cast2 Unmanaged._logcumsumexp_tl

_logcumsumexp_out_ttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
_logcumsumexp_out_ttl = _cast3 Unmanaged._logcumsumexp_out_ttl

logcumsumexp_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
logcumsumexp_tl = _cast2 Unmanaged.logcumsumexp_tl

logcumsumexp_out_ttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
logcumsumexp_out_ttl = _cast3 Unmanaged.logcumsumexp_out_ttl

logcumsumexp_tn
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr Tensor)
logcumsumexp_tn = _cast2 Unmanaged.logcumsumexp_tn

logcumsumexp_out_ttn
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr Tensor)
logcumsumexp_out_ttn = _cast3 Unmanaged.logcumsumexp_out_ttn

logsumexp_tlb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
logsumexp_tlb = _cast3 Unmanaged.logsumexp_tlb

logsumexp_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
logsumexp_tl = _cast2 Unmanaged.logsumexp_tl

logsumexp_out_ttlb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
logsumexp_out_ttlb = _cast4 Unmanaged.logsumexp_out_ttlb

logsumexp_out_ttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
logsumexp_out_ttl = _cast3 Unmanaged.logsumexp_out_ttl

logsumexp_tNb
  :: ForeignPtr Tensor
  -> ForeignPtr DimnameList
  -> CBool
  -> IO (ForeignPtr Tensor)
logsumexp_tNb = _cast3 Unmanaged.logsumexp_tNb

logsumexp_tN
  :: ForeignPtr Tensor
  -> ForeignPtr DimnameList
  -> IO (ForeignPtr Tensor)
logsumexp_tN = _cast2 Unmanaged.logsumexp_tN

logsumexp_out_ttNb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr DimnameList
  -> CBool
  -> IO (ForeignPtr Tensor)
logsumexp_out_ttNb = _cast4 Unmanaged.logsumexp_out_ttNb

logsumexp_out_ttN
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr DimnameList
  -> IO (ForeignPtr Tensor)
logsumexp_out_ttN = _cast3 Unmanaged.logsumexp_out_ttN

margin_ranking_loss_tttdl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> Int64
  -> IO (ForeignPtr Tensor)
margin_ranking_loss_tttdl = _cast5 Unmanaged.margin_ranking_loss_tttdl

margin_ranking_loss_tttd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> IO (ForeignPtr Tensor)
margin_ranking_loss_tttd = _cast4 Unmanaged.margin_ranking_loss_tttd

margin_ranking_loss_ttt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
margin_ranking_loss_ttt = _cast3 Unmanaged.margin_ranking_loss_ttt

matmul_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
matmul_tt = _cast2 Unmanaged.matmul_tt

matmul_backward_ttta
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr (StdArray '(CBool,2))
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
matmul_backward_ttta = _cast4 Unmanaged.matmul_backward_ttta

matmul_out_ttt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
matmul_out_ttt = _cast3 Unmanaged.matmul_out_ttt

matrix_power_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
matrix_power_tl = _cast2 Unmanaged.matrix_power_tl

matrix_power_out_ttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
matrix_power_out_ttl = _cast3 Unmanaged.matrix_power_out_ttl

matrix_exp_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
matrix_exp_t = _cast1 Unmanaged.matrix_exp_t

matrix_exp_backward_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
matrix_exp_backward_tt = _cast2 Unmanaged.matrix_exp_backward_tt

_aminmax_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
_aminmax_t = _cast1 Unmanaged._aminmax_t

_aminmax_tlb
  :: ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
_aminmax_tlb = _cast3 Unmanaged._aminmax_tlb

_aminmax_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
_aminmax_tl = _cast2 Unmanaged._aminmax_tl

aminmax_tlb
  :: ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
aminmax_tlb = _cast3 Unmanaged.aminmax_tlb

aminmax_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
aminmax_tl = _cast2 Unmanaged.aminmax_tl

aminmax_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
aminmax_t = _cast1 Unmanaged.aminmax_t

aminmax_out_tttlb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
aminmax_out_tttlb = _cast5 Unmanaged.aminmax_out_tttlb

aminmax_out_tttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
aminmax_out_tttl = _cast4 Unmanaged.aminmax_out_tttl

aminmax_out_ttt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
aminmax_out_ttt = _cast3 Unmanaged.aminmax_out_ttt

_compute_linear_combination_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
_compute_linear_combination_tt = _cast2 Unmanaged._compute_linear_combination_tt

_compute_linear_combination_out_ttt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
_compute_linear_combination_out_ttt = _cast3 Unmanaged._compute_linear_combination_out_ttt

max_tlb
  :: ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_tlb = _cast3 Unmanaged.max_tlb

max_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_tl = _cast2 Unmanaged.max_tl

max_out_tttlb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_out_tttlb = _cast5 Unmanaged.max_out_tttlb

max_out_tttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_out_tttl = _cast4 Unmanaged.max_out_tttl

max_tnb
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_tnb = _cast3 Unmanaged.max_tnb

max_tn
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_tn = _cast2 Unmanaged.max_tn

max_out_tttnb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_out_tttnb = _cast5 Unmanaged.max_out_tttnb

max_out_tttn
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_out_tttn = _cast4 Unmanaged.max_out_tttn

value_selecting_reduction_backward_tltlb
  :: ForeignPtr Tensor
  -> Int64
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
value_selecting_reduction_backward_tltlb = _cast5 Unmanaged.value_selecting_reduction_backward_tltlb

amax_tlb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
amax_tlb = _cast3 Unmanaged.amax_tlb

amax_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
amax_tl = _cast2 Unmanaged.amax_tl

amax_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
amax_t = _cast1 Unmanaged.amax_t

amax_out_ttlb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
amax_out_ttlb = _cast4 Unmanaged.amax_out_ttlb

amax_out_ttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
amax_out_ttl = _cast3 Unmanaged.amax_out_ttl

amax_out_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
amax_out_tt = _cast2 Unmanaged.amax_out_tt

max_pool1d_with_indices_tllllb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_pool1d_with_indices_tllllb = _cast6 Unmanaged.max_pool1d_with_indices_tllllb

max_pool1d_with_indices_tllll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_pool1d_with_indices_tllll = _cast5 Unmanaged.max_pool1d_with_indices_tllll

max_pool1d_with_indices_tlll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_pool1d_with_indices_tlll = _cast4 Unmanaged.max_pool1d_with_indices_tlll

max_pool1d_with_indices_tll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_pool1d_with_indices_tll = _cast3 Unmanaged.max_pool1d_with_indices_tll

max_pool1d_with_indices_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
max_pool1d_with_indices_tl = _cast2 Unmanaged.max_pool1d_with_indices_tl

max_pool1d_tllllb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
max_pool1d_tllllb = _cast6 Unmanaged.max_pool1d_tllllb

max_pool1d_tllll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool1d_tllll = _cast5 Unmanaged.max_pool1d_tllll

max_pool1d_tlll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool1d_tlll = _cast4 Unmanaged.max_pool1d_tlll

max_pool1d_tll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool1d_tll = _cast3 Unmanaged.max_pool1d_tll

max_pool1d_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool1d_tl = _cast2 Unmanaged.max_pool1d_tl

max_pool2d_tllllb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
max_pool2d_tllllb = _cast6 Unmanaged.max_pool2d_tllllb

max_pool2d_tllll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool2d_tllll = _cast5 Unmanaged.max_pool2d_tllll

max_pool2d_tlll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool2d_tlll = _cast4 Unmanaged.max_pool2d_tlll

max_pool2d_tll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool2d_tll = _cast3 Unmanaged.max_pool2d_tll

max_pool2d_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool2d_tl = _cast2 Unmanaged.max_pool2d_tl

max_pool2d_backward_ttllllb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
max_pool2d_backward_ttllllb = _cast7 Unmanaged.max_pool2d_backward_ttllllb

max_pool2d_backward_ttllll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool2d_backward_ttllll = _cast6 Unmanaged.max_pool2d_backward_ttllll

max_pool2d_backward_ttlll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool2d_backward_ttlll = _cast5 Unmanaged.max_pool2d_backward_ttlll

max_pool2d_backward_ttll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool2d_backward_ttll = _cast4 Unmanaged.max_pool2d_backward_ttll

max_pool2d_backward_ttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool2d_backward_ttl = _cast3 Unmanaged.max_pool2d_backward_ttl

mkldnn_max_pool2d_tllllb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool2d_tllllb = _cast6 Unmanaged.mkldnn_max_pool2d_tllllb

mkldnn_max_pool2d_tllll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool2d_tllll = _cast5 Unmanaged.mkldnn_max_pool2d_tllll

mkldnn_max_pool2d_tlll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool2d_tlll = _cast4 Unmanaged.mkldnn_max_pool2d_tlll

mkldnn_max_pool2d_tll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool2d_tll = _cast3 Unmanaged.mkldnn_max_pool2d_tll

mkldnn_max_pool2d_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool2d_tl = _cast2 Unmanaged.mkldnn_max_pool2d_tl

mkldnn_max_pool2d_backward_tttllllb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool2d_backward_tttllllb = _cast8 Unmanaged.mkldnn_max_pool2d_backward_tttllllb

mkldnn_max_pool2d_backward_tttllll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool2d_backward_tttllll = _cast7 Unmanaged.mkldnn_max_pool2d_backward_tttllll

mkldnn_max_pool2d_backward_tttlll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool2d_backward_tttlll = _cast6 Unmanaged.mkldnn_max_pool2d_backward_tttlll

mkldnn_max_pool2d_backward_tttll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool2d_backward_tttll = _cast5 Unmanaged.mkldnn_max_pool2d_backward_tttll

mkldnn_max_pool2d_backward_tttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool2d_backward_tttl = _cast4 Unmanaged.mkldnn_max_pool2d_backward_tttl

mkldnn_max_pool3d_tllllb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool3d_tllllb = _cast6 Unmanaged.mkldnn_max_pool3d_tllllb

mkldnn_max_pool3d_tllll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool3d_tllll = _cast5 Unmanaged.mkldnn_max_pool3d_tllll

mkldnn_max_pool3d_tlll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool3d_tlll = _cast4 Unmanaged.mkldnn_max_pool3d_tlll

mkldnn_max_pool3d_tll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool3d_tll = _cast3 Unmanaged.mkldnn_max_pool3d_tll

mkldnn_max_pool3d_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool3d_tl = _cast2 Unmanaged.mkldnn_max_pool3d_tl

mkldnn_max_pool3d_backward_tttllllb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool3d_backward_tttllllb = _cast8 Unmanaged.mkldnn_max_pool3d_backward_tttllllb

mkldnn_max_pool3d_backward_tttllll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool3d_backward_tttllll = _cast7 Unmanaged.mkldnn_max_pool3d_backward_tttllll

mkldnn_max_pool3d_backward_tttlll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool3d_backward_tttlll = _cast6 Unmanaged.mkldnn_max_pool3d_backward_tttlll

mkldnn_max_pool3d_backward_tttll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool3d_backward_tttll = _cast5 Unmanaged.mkldnn_max_pool3d_backward_tttll

mkldnn_max_pool3d_backward_tttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mkldnn_max_pool3d_backward_tttl = _cast4 Unmanaged.mkldnn_max_pool3d_backward_tttl

quantized_max_pool1d_tllllb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
quantized_max_pool1d_tllllb = _cast6 Unmanaged.quantized_max_pool1d_tllllb

quantized_max_pool1d_tllll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
quantized_max_pool1d_tllll = _cast5 Unmanaged.quantized_max_pool1d_tllll

quantized_max_pool1d_tlll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
quantized_max_pool1d_tlll = _cast4 Unmanaged.quantized_max_pool1d_tlll

quantized_max_pool1d_tll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
quantized_max_pool1d_tll = _cast3 Unmanaged.quantized_max_pool1d_tll

quantized_max_pool1d_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
quantized_max_pool1d_tl = _cast2 Unmanaged.quantized_max_pool1d_tl

quantized_max_pool2d_tllllb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
quantized_max_pool2d_tllllb = _cast6 Unmanaged.quantized_max_pool2d_tllllb

quantized_max_pool2d_tllll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
quantized_max_pool2d_tllll = _cast5 Unmanaged.quantized_max_pool2d_tllll

quantized_max_pool2d_tlll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
quantized_max_pool2d_tlll = _cast4 Unmanaged.quantized_max_pool2d_tlll

quantized_max_pool2d_tll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
quantized_max_pool2d_tll = _cast3 Unmanaged.quantized_max_pool2d_tll

quantized_max_pool2d_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
quantized_max_pool2d_tl = _cast2 Unmanaged.quantized_max_pool2d_tl

max_pool3d_tllllb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
max_pool3d_tllllb = _cast6 Unmanaged.max_pool3d_tllllb

max_pool3d_tllll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool3d_tllll = _cast5 Unmanaged.max_pool3d_tllll

max_pool3d_tlll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool3d_tlll = _cast4 Unmanaged.max_pool3d_tlll

max_pool3d_tll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool3d_tll = _cast3 Unmanaged.max_pool3d_tll

max_pool3d_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
max_pool3d_tl = _cast2 Unmanaged.max_pool3d_tl

mean_ts
  :: ForeignPtr Tensor
  -> ScalarType
  -> IO (ForeignPtr Tensor)
mean_ts = _cast2 Unmanaged.mean_ts

mean_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
mean_t = _cast1 Unmanaged.mean_t

mean_tlbs
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> ScalarType
  -> IO (ForeignPtr Tensor)
mean_tlbs = _cast4 Unmanaged.mean_tlbs

mean_tlb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
mean_tlb = _cast3 Unmanaged.mean_tlb

mean_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mean_tl = _cast2 Unmanaged.mean_tl

mean_out_ttlbs
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> ScalarType
  -> IO (ForeignPtr Tensor)
mean_out_ttlbs = _cast5 Unmanaged.mean_out_ttlbs

mean_out_ttlb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
mean_out_ttlb = _cast4 Unmanaged.mean_out_ttlb

mean_out_ttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
mean_out_ttl = _cast3 Unmanaged.mean_out_ttl

mean_tNbs
  :: ForeignPtr Tensor
  -> ForeignPtr DimnameList
  -> CBool
  -> ScalarType
  -> IO (ForeignPtr Tensor)
mean_tNbs = _cast4 Unmanaged.mean_tNbs

mean_tNb
  :: ForeignPtr Tensor
  -> ForeignPtr DimnameList
  -> CBool
  -> IO (ForeignPtr Tensor)
mean_tNb = _cast3 Unmanaged.mean_tNb

mean_tN
  :: ForeignPtr Tensor
  -> ForeignPtr DimnameList
  -> IO (ForeignPtr Tensor)
mean_tN = _cast2 Unmanaged.mean_tN

mean_out_ttNbs
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr DimnameList
  -> CBool
  -> ScalarType
  -> IO (ForeignPtr Tensor)
mean_out_ttNbs = _cast5 Unmanaged.mean_out_ttNbs

mean_out_ttNb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr DimnameList
  -> CBool
  -> IO (ForeignPtr Tensor)
mean_out_ttNb = _cast4 Unmanaged.mean_out_ttNb

mean_out_ttN
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr DimnameList
  -> IO (ForeignPtr Tensor)
mean_out_ttN = _cast3 Unmanaged.mean_out_ttN

nanmean_tlbs
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> ScalarType
  -> IO (ForeignPtr Tensor)
nanmean_tlbs = _cast4 Unmanaged.nanmean_tlbs

nanmean_tlb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
nanmean_tlb = _cast3 Unmanaged.nanmean_tlb

nanmean_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
nanmean_tl = _cast2 Unmanaged.nanmean_tl

nanmean_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
nanmean_t = _cast1 Unmanaged.nanmean_t

nanmean_out_ttlbs
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> ScalarType
  -> IO (ForeignPtr Tensor)
nanmean_out_ttlbs = _cast5 Unmanaged.nanmean_out_ttlbs

nanmean_out_ttlb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
nanmean_out_ttlb = _cast4 Unmanaged.nanmean_out_ttlb

nanmean_out_ttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
nanmean_out_ttl = _cast3 Unmanaged.nanmean_out_ttl

nanmean_out_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
nanmean_out_tt = _cast2 Unmanaged.nanmean_out_tt

median_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
median_t = _cast1 Unmanaged.median_t

median_tlb
  :: ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
median_tlb = _cast3 Unmanaged.median_tlb

median_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
median_tl = _cast2 Unmanaged.median_tl

median_out_tttlb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
median_out_tttlb = _cast5 Unmanaged.median_out_tttlb

median_out_tttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
median_out_tttl = _cast4 Unmanaged.median_out_tttl

median_tnb
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
median_tnb = _cast3 Unmanaged.median_tnb

median_tn
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
median_tn = _cast2 Unmanaged.median_tn

median_out_tttnb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
median_out_tttnb = _cast5 Unmanaged.median_out_tttnb

median_out_tttn
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
median_out_tttn = _cast4 Unmanaged.median_out_tttn

nanmedian_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
nanmedian_t = _cast1 Unmanaged.nanmedian_t

nanmedian_tlb
  :: ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
nanmedian_tlb = _cast3 Unmanaged.nanmedian_tlb

nanmedian_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
nanmedian_tl = _cast2 Unmanaged.nanmedian_tl

nanmedian_out_tttlb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
nanmedian_out_tttlb = _cast5 Unmanaged.nanmedian_out_tttlb

nanmedian_out_tttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
nanmedian_out_tttl = _cast4 Unmanaged.nanmedian_out_tttl

nanmedian_tnb
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
nanmedian_tnb = _cast3 Unmanaged.nanmedian_tnb

nanmedian_tn
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
nanmedian_tn = _cast2 Unmanaged.nanmedian_tn

nanmedian_out_tttnb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
nanmedian_out_tttnb = _cast5 Unmanaged.nanmedian_out_tttnb

nanmedian_out_tttn
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
nanmedian_out_tttn = _cast4 Unmanaged.nanmedian_out_tttn

min_tlb
  :: ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
min_tlb = _cast3 Unmanaged.min_tlb

min_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
min_tl = _cast2 Unmanaged.min_tl

min_out_tttlb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
min_out_tttlb = _cast5 Unmanaged.min_out_tttlb

min_out_tttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
min_out_tttl = _cast4 Unmanaged.min_out_tttl

min_tnb
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
min_tnb = _cast3 Unmanaged.min_tnb

min_tn
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
min_tn = _cast2 Unmanaged.min_tn

min_out_tttnb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
min_out_tttnb = _cast5 Unmanaged.min_out_tttnb

min_out_tttn
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
min_out_tttn = _cast4 Unmanaged.min_out_tttn

amin_tlb
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
amin_tlb = _cast3 Unmanaged.amin_tlb

amin_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
amin_tl = _cast2 Unmanaged.amin_tl

amin_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
amin_t = _cast1 Unmanaged.amin_t

amin_out_ttlb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> CBool
  -> IO (ForeignPtr Tensor)
amin_out_ttlb = _cast4 Unmanaged.amin_out_ttlb

amin_out_ttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
amin_out_ttl = _cast3 Unmanaged.amin_out_ttl

amin_out_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
amin_out_tt = _cast2 Unmanaged.amin_out_tt

_mps_convolution_tttllll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> Int64
  -> IO (ForeignPtr Tensor)
_mps_convolution_tttllll = _cast7 Unmanaged._mps_convolution_tttllll

mps_convolution_backward_tttlllla
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> Int64
  -> ForeignPtr (StdArray '(CBool,3))
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor)))
mps_convolution_backward_tttlllla = _cast8 Unmanaged.mps_convolution_backward_tttlllla

mkldnn_convolution_tttllll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> Int64
  -> IO (ForeignPtr Tensor)
mkldnn_convolution_tttllll = _cast7 Unmanaged.mkldnn_convolution_tttllll

mkldnn_rnn_layer_tttttttbllllbbbb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CBool
  -> ForeignPtr IntArray
  -> Int64
  -> Int64
  -> Int64
  -> CBool
  -> CBool
  -> CBool
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor,Tensor)))
mkldnn_rnn_layer_tttttttbllllbbbb = _cast16 Unmanaged.mkldnn_rnn_layer_tttttttbllllbbbb

mkldnn_rnn_layer_backward_tttttttttttttblllbbblbt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CBool
  -> Int64
  -> Int64
  -> Int64
  -> CBool
  -> CBool
  -> CBool
  -> ForeignPtr IntArray
  -> CBool
  -> ForeignPtr Tensor
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor,Tensor,Tensor,Tensor,Tensor)))
mkldnn_rnn_layer_backward_tttttttttttttblllbbblbt = _cast23 Unmanaged.mkldnn_rnn_layer_backward_tttttttttttttblllbbblbt

miopen_batch_norm_tttttbdd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CBool
  -> CDouble
  -> CDouble
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor)))
miopen_batch_norm_tttttbdd = _cast8 Unmanaged.miopen_batch_norm_tttttbdd

miopen_batch_norm_backward_tttttttd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor)))
miopen_batch_norm_backward_tttttttd = _cast8 Unmanaged.miopen_batch_norm_backward_tttttttd

miopen_convolution_tttllllbb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> Int64
  -> CBool
  -> CBool
  -> IO (ForeignPtr Tensor)
miopen_convolution_tttllllbb = _cast9 Unmanaged.miopen_convolution_tttllllbb

miopen_convolution_transpose_tttlllllbb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> Int64
  -> CBool
  -> CBool
  -> IO (ForeignPtr Tensor)
miopen_convolution_transpose_tttlllllbb = _cast10 Unmanaged.miopen_convolution_transpose_tttlllllbb

miopen_depthwise_convolution_tttllllbb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> Int64
  -> CBool
  -> CBool
  -> IO (ForeignPtr Tensor)
miopen_depthwise_convolution_tttllllbb = _cast9 Unmanaged.miopen_depthwise_convolution_tttllllbb

miopen_convolution_relu_tttllll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> Int64
  -> IO (ForeignPtr Tensor)
miopen_convolution_relu_tttllll = _cast7 Unmanaged.miopen_convolution_relu_tttllll

miopen_convolution_add_relu_tttstllll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Scalar
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> Int64
  -> IO (ForeignPtr Tensor)
miopen_convolution_add_relu_tttstllll = _cast9 Unmanaged.miopen_convolution_add_relu_tttstllll

miopen_rnn_tllttlllbdbblt
  :: ForeignPtr Tensor
  -> ForeignPtr TensorList
  -> Int64
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> Int64
  -> Int64
  -> CBool
  -> CDouble
  -> CBool
  -> CBool
  -> ForeignPtr IntArray
  -> ForeignPtr Tensor
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor,Tensor,Tensor)))
miopen_rnn_tllttlllbdbblt = _cast14 Unmanaged.miopen_rnn_tllttlllbdbblt

miopen_rnn_backward_tlltttttttlllbdbbltta
  :: ForeignPtr Tensor
  -> ForeignPtr TensorList
  -> Int64
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> Int64
  -> Int64
  -> CBool
  -> CDouble
  -> CBool
  -> CBool
  -> ForeignPtr IntArray
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr (StdArray '(CBool,4))
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor,TensorList)))
miopen_rnn_backward_tlltttttttlllbdbbltta = _cast21 Unmanaged.miopen_rnn_backward_tlltttttttlllbdbbltta

mm_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
mm_tt = _cast2 Unmanaged.mm_tt

mm_out_ttt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
mm_out_ttt = _cast3 Unmanaged.mm_out_ttt

_sparse_mm_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
_sparse_mm_tt = _cast2 Unmanaged._sparse_mm_tt

_sparse_mm_tts
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr StdString
  -> IO (ForeignPtr Tensor)
_sparse_mm_tts = _cast3 Unmanaged._sparse_mm_tts

_sparse_sparse_matmul_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
_sparse_sparse_matmul_tt = _cast2 Unmanaged._sparse_sparse_matmul_tt

mode_tlb
  :: ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
mode_tlb = _cast3 Unmanaged.mode_tlb

mode_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
mode_tl = _cast2 Unmanaged.mode_tl

mode_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
mode_t = _cast1 Unmanaged.mode_t

mode_out_tttlb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
mode_out_tttlb = _cast5 Unmanaged.mode_out_tttlb

mode_out_tttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
mode_out_tttl = _cast4 Unmanaged.mode_out_tttl

mode_out_ttt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
mode_out_ttt = _cast3 Unmanaged.mode_out_ttt

mode_tnb
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
mode_tnb = _cast3 Unmanaged.mode_tnb

mode_tn
  :: ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
mode_tn = _cast2 Unmanaged.mode_tn

mode_out_tttnb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
mode_out_tttnb = _cast5 Unmanaged.mode_out_tttnb

mode_out_tttn
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Dimname
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
mode_out_tttn = _cast4 Unmanaged.mode_out_tttn

mul_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
mul_tt = _cast2 Unmanaged.mul_tt

mul_out_ttt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
mul_out_ttt = _cast3 Unmanaged.mul_out_ttt

mul_ts
  :: ForeignPtr Tensor
  -> ForeignPtr Scalar
  -> IO (ForeignPtr Tensor)
mul_ts = _cast2 Unmanaged.mul_ts

multiply_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
multiply_tt = _cast2 Unmanaged.multiply_tt

multiply_out_ttt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
multiply_out_ttt = _cast3 Unmanaged.multiply_out_ttt

multiply_ts
  :: ForeignPtr Tensor
  -> ForeignPtr Scalar
  -> IO (ForeignPtr Tensor)
multiply_ts = _cast2 Unmanaged.multiply_ts

mv_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
mv_tt = _cast2 Unmanaged.mv_tt

mv_out_ttt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
mv_out_ttt = _cast3 Unmanaged.mv_out_ttt

mvlgamma_out_ttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
mvlgamma_out_ttl = _cast3 Unmanaged.mvlgamma_out_ttl

mvlgamma_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
mvlgamma_tl = _cast2 Unmanaged.mvlgamma_tl

narrow_copy_tlll
  :: ForeignPtr Tensor
  -> Int64
  -> Int64
  -> Int64
  -> IO (ForeignPtr Tensor)
narrow_copy_tlll = _cast4 Unmanaged.narrow_copy_tlll

narrow_copy_out_ttlll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> Int64
  -> Int64
  -> IO (ForeignPtr Tensor)
narrow_copy_out_ttlll = _cast5 Unmanaged.narrow_copy_out_ttlll

narrow_tlll
  :: ForeignPtr Tensor
  -> Int64
  -> Int64
  -> Int64
  -> IO (ForeignPtr Tensor)
narrow_tlll = _cast4 Unmanaged.narrow_tlll

narrow_tltl
  :: ForeignPtr Tensor
  -> Int64
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
narrow_tltl = _cast4 Unmanaged.narrow_tltl

native_batch_norm_tttttbdd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CBool
  -> CDouble
  -> CDouble
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor)))
native_batch_norm_tttttbdd = _cast8 Unmanaged.native_batch_norm_tttttbdd

native_batch_norm_out_ttttttttbdd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CBool
  -> CDouble
  -> CDouble
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor)))
native_batch_norm_out_ttttttttbdd = _cast11 Unmanaged.native_batch_norm_out_ttttttttbdd

_native_batch_norm_legit_tttttbdd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CBool
  -> CDouble
  -> CDouble
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor)))
_native_batch_norm_legit_tttttbdd = _cast8 Unmanaged._native_batch_norm_legit_tttttbdd

_native_batch_norm_legit_out_ttttttttbdd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CBool
  -> CDouble
  -> CDouble
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor)))
_native_batch_norm_legit_out_ttttttttbdd = _cast11 Unmanaged._native_batch_norm_legit_out_ttttttttbdd

_native_batch_norm_legit_tttbdd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CBool
  -> CDouble
  -> CDouble
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor)))
_native_batch_norm_legit_tttbdd = _cast6 Unmanaged._native_batch_norm_legit_tttbdd

_native_batch_norm_legit_out_ttttttbdd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CBool
  -> CDouble
  -> CDouble
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor)))
_native_batch_norm_legit_out_ttttttbdd = _cast9 Unmanaged._native_batch_norm_legit_out_ttttttbdd

batch_norm_stats_td
  :: ForeignPtr Tensor
  -> CDouble
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
batch_norm_stats_td = _cast2 Unmanaged.batch_norm_stats_td

batch_norm_elemt_tttttd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> IO (ForeignPtr Tensor)
batch_norm_elemt_tttttd = _cast6 Unmanaged.batch_norm_elemt_tttttd

batch_norm_elemt_out_ttttttd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> IO (ForeignPtr Tensor)
batch_norm_elemt_out_ttttttd = _cast7 Unmanaged.batch_norm_elemt_out_ttttttd

batch_norm_gather_stats_tttttddl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> CDouble
  -> Int64
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
batch_norm_gather_stats_tttttddl = _cast8 Unmanaged.batch_norm_gather_stats_tttttddl

batch_norm_gather_stats_with_counts_tttttddt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> CDouble
  -> ForeignPtr Tensor
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
batch_norm_gather_stats_with_counts_tttttddt = _cast8 Unmanaged.batch_norm_gather_stats_with_counts_tttttddt

native_batch_norm_backward_tttttttbda
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CBool
  -> CDouble
  -> ForeignPtr (StdArray '(CBool,3))
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor)))
native_batch_norm_backward_tttttttbda = _cast10 Unmanaged.native_batch_norm_backward_tttttttbda

batch_norm_backward_reduce_tttttbbb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CBool
  -> CBool
  -> CBool
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor,Tensor,Tensor)))
batch_norm_backward_reduce_tttttbbb = _cast8 Unmanaged.batch_norm_backward_reduce_tttttbbb

batch_norm_backward_elemt_tttttttt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
batch_norm_backward_elemt_tttttttt = _cast8 Unmanaged.batch_norm_backward_elemt_tttttttt

batch_norm_update_stats_tttd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> IO (ForeignPtr (StdTuple '(Tensor,Tensor)))
batch_norm_update_stats_tttd = _cast4 Unmanaged.batch_norm_update_stats_tttd

is_vulkan_available
  :: IO (CBool)
is_vulkan_available = _cast0 Unmanaged.is_vulkan_available

_nnpack_available
  :: IO (CBool)
_nnpack_available = _cast0 Unmanaged._nnpack_available

_nnpack_spatial_convolution_tttll
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
_nnpack_spatial_convolution_tttll = _cast5 Unmanaged._nnpack_spatial_convolution_tttll

_nnpack_spatial_convolution_tttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
_nnpack_spatial_convolution_tttl = _cast4 Unmanaged._nnpack_spatial_convolution_tttl

ones_lNo
  :: ForeignPtr IntArray
  -> ForeignPtr DimnameList
  -> ForeignPtr TensorOptions
  -> IO (ForeignPtr Tensor)
ones_lNo = _cast3 Unmanaged.ones_lNo

ones_lN
  :: ForeignPtr IntArray
  -> ForeignPtr DimnameList
  -> IO (ForeignPtr Tensor)
ones_lN = _cast2 Unmanaged.ones_lN

ones_lo
  :: ForeignPtr IntArray
  -> ForeignPtr TensorOptions
  -> IO (ForeignPtr Tensor)
ones_lo = _cast2 Unmanaged.ones_lo

ones_l
  :: ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
ones_l = _cast1 Unmanaged.ones_l

ones_out_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
ones_out_tl = _cast2 Unmanaged.ones_out_tl

ones_like_toM
  :: ForeignPtr Tensor
  -> ForeignPtr TensorOptions
  -> MemoryFormat
  -> IO (ForeignPtr Tensor)
ones_like_toM = _cast3 Unmanaged.ones_like_toM

ones_like_to
  :: ForeignPtr Tensor
  -> ForeignPtr TensorOptions
  -> IO (ForeignPtr Tensor)
ones_like_to = _cast2 Unmanaged.ones_like_to

ones_like_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
ones_like_t = _cast1 Unmanaged.ones_like_t

pairwise_distance_ttddb
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> CDouble
  -> CBool
  -> IO (ForeignPtr Tensor)
pairwise_distance_ttddb = _cast5 Unmanaged.pairwise_distance_ttddb

pairwise_distance_ttdd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> CDouble
  -> IO (ForeignPtr Tensor)
pairwise_distance_ttdd = _cast4 Unmanaged.pairwise_distance_ttdd

pairwise_distance_ttd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> IO (ForeignPtr Tensor)
pairwise_distance_ttd = _cast3 Unmanaged.pairwise_distance_ttd

pairwise_distance_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
pairwise_distance_tt = _cast2 Unmanaged.pairwise_distance_tt

cdist_ttdl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> Int64
  -> IO (ForeignPtr Tensor)
cdist_ttdl = _cast4 Unmanaged.cdist_ttdl

cdist_ttd
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> IO (ForeignPtr Tensor)
cdist_ttd = _cast3 Unmanaged.cdist_ttd

cdist_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
cdist_tt = _cast2 Unmanaged.cdist_tt

_euclidean_dist_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
_euclidean_dist_tt = _cast2 Unmanaged._euclidean_dist_tt

_cdist_forward_ttdl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> Int64
  -> IO (ForeignPtr Tensor)
_cdist_forward_ttdl = _cast4 Unmanaged._cdist_forward_ttdl

_cdist_backward_tttdt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
_cdist_backward_tttdt = _cast5 Unmanaged._cdist_backward_tttdt

pdist_td
  :: ForeignPtr Tensor
  -> CDouble
  -> IO (ForeignPtr Tensor)
pdist_td = _cast2 Unmanaged.pdist_td

pdist_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
pdist_t = _cast1 Unmanaged.pdist_t

_pdist_forward_td
  :: ForeignPtr Tensor
  -> CDouble
  -> IO (ForeignPtr Tensor)
_pdist_forward_td = _cast2 Unmanaged._pdist_forward_td

_pdist_forward_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
_pdist_forward_t = _cast1 Unmanaged._pdist_forward_t

_pdist_backward_ttdt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CDouble
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
_pdist_backward_ttdt = _cast4 Unmanaged._pdist_backward_ttdt

cosine_similarity_ttld
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> CDouble
  -> IO (ForeignPtr Tensor)
cosine_similarity_ttld = _cast4 Unmanaged.cosine_similarity_ttld

cosine_similarity_ttl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
cosine_similarity_ttl = _cast3 Unmanaged.cosine_similarity_ttl

cosine_similarity_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
cosine_similarity_tt = _cast2 Unmanaged.cosine_similarity_tt

permute_tl
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
permute_tl = _cast2 Unmanaged.permute_tl

movedim_tll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
movedim_tll = _cast3 Unmanaged.movedim_tll

moveaxis_tll
  :: ForeignPtr Tensor
  -> ForeignPtr IntArray
  -> ForeignPtr IntArray
  -> IO (ForeignPtr Tensor)
moveaxis_tll = _cast3 Unmanaged.moveaxis_tll

adjoint_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
adjoint_t = _cast1 Unmanaged.adjoint_t

pixel_shuffle_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
pixel_shuffle_tl = _cast2 Unmanaged.pixel_shuffle_tl

pixel_unshuffle_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
pixel_unshuffle_tl = _cast2 Unmanaged.pixel_unshuffle_tl

channel_shuffle_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
channel_shuffle_tl = _cast2 Unmanaged.channel_shuffle_tl

native_channel_shuffle_tl
  :: ForeignPtr Tensor
  -> Int64
  -> IO (ForeignPtr Tensor)
native_channel_shuffle_tl = _cast2 Unmanaged.native_channel_shuffle_tl

_pin_memory_tD
  :: ForeignPtr Tensor
  -> DeviceType
  -> IO (ForeignPtr Tensor)
_pin_memory_tD = _cast2 Unmanaged._pin_memory_tD

_pin_memory_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
_pin_memory_t = _cast1 Unmanaged._pin_memory_t

pinverse_td
  :: ForeignPtr Tensor
  -> CDouble
  -> IO (ForeignPtr Tensor)
pinverse_td = _cast2 Unmanaged.pinverse_td

pinverse_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
pinverse_t = _cast1 Unmanaged.pinverse_t

poisson_nll_loss_ttbbdl
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> CBool
  -> CBool
  -> CDouble
  -> Int64
  -> IO (ForeignPtr Tensor)
poisson_nll_loss_ttbbdl = _cast6 Unmanaged.poisson_nll_loss_ttbbdl

rad2deg_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
rad2deg_t = _cast1 Unmanaged.rad2deg_t

rad2deg__t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
rad2deg__t = _cast1 Unmanaged.rad2deg__t

rad2deg_out_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
rad2deg_out_tt = _cast2 Unmanaged.rad2deg_out_tt

deg2rad_t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
deg2rad_t = _cast1 Unmanaged.deg2rad_t

deg2rad__t
  :: ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
deg2rad__t = _cast1 Unmanaged.deg2rad__t

deg2rad_out_tt
  :: ForeignPtr Tensor
  -> ForeignPtr Tensor
  -> IO (ForeignPtr Tensor)
deg2rad_out_tt = _cast2 Unmanaged.deg2rad_out_tt

scalar_tensor_so
  :: ForeignPtr Scalar
  -> ForeignPtr TensorOptions
  -> IO (ForeignPtr Tensor)
scalar_tensor_so = _cast2 Unmanaged.scalar_tensor_so

scalar_tensor_s
  :: ForeignPtr Scalar
  -> IO (ForeignPtr Tensor)
scalar_tensor_s = _cast1 Unmanaged.scalar_tensor_s

rand_lNo
  :: ForeignPtr IntArray
  -> ForeignPtr DimnameList
  -> ForeignPtr TensorOptions
  -> IO (ForeignPtr Tensor)
rand_lNo = _cast3 Unmanaged.rand_lNo

