type Stdlib.Effect.t += | E_view : ('a, 'b) t -> Nx_core.View.t Stdlib.Effect.t| E_buffer : {context : context;dtype : ('a0, 'b0) Nx_core.Dtype.t;size_in_elements : int;
} -> ('a0, 'b0) t Stdlib.Effect.t| E_const_scalar : {context : context;value : 'a1;dtype : ('a1, 'b1) Nx_core.Dtype.t;
} -> ('a1, 'b1) t Stdlib.Effect.t| E_from_host : {context : context;array : ('a2, 'b2) Nx_buffer.t;
} -> ('a2, 'b2) t Stdlib.Effect.t| E_add : {out : ('a3, 'b3) t;a : ('a3, 'b3) t;b : ('a3, 'b3) t;
} -> unit Stdlib.Effect.t| E_sub : {out : ('a4, 'b4) t;a : ('a4, 'b4) t;b : ('a4, 'b4) t;
} -> unit Stdlib.Effect.t| E_mul : {out : ('a5, 'b5) t;a : ('a5, 'b5) t;b : ('a5, 'b5) t;
} -> unit Stdlib.Effect.t| E_idiv : {out : ('a6, 'b6) t;a : ('a6, 'b6) t;b : ('a6, 'b6) t;
} -> unit Stdlib.Effect.t| E_fdiv : {out : ('a7, 'b7) t;a : ('a7, 'b7) t;b : ('a7, 'b7) t;
} -> unit Stdlib.Effect.t| E_max : {out : ('a8, 'b8) t;a : ('a8, 'b8) t;b : ('a8, 'b8) t;
} -> unit Stdlib.Effect.t| E_min : {out : ('a9, 'b9) t;a : ('a9, 'b9) t;b : ('a9, 'b9) t;
} -> unit Stdlib.Effect.t| E_mod : {out : ('a10, 'b10) t;a : ('a10, 'b10) t;b : ('a10, 'b10) t;
} -> unit Stdlib.Effect.t| E_pow : {out : ('a11, 'b11) t;a : ('a11, 'b11) t;b : ('a11, 'b11) t;
} -> unit Stdlib.Effect.t| E_xor : {out : ('a12, 'b12) t;a : ('a12, 'b12) t;b : ('a12, 'b12) t;
} -> unit Stdlib.Effect.t| E_or : {out : ('a13, 'b13) t;a : ('a13, 'b13) t;b : ('a13, 'b13) t;
} -> unit Stdlib.Effect.t| E_and : {out : ('a14, 'b14) t;a : ('a14, 'b14) t;b : ('a14, 'b14) t;
} -> unit Stdlib.Effect.t| E_atan2 : {out : ('a15, 'b15) t;a : ('a15, 'b15) t;b : ('a15, 'b15) t;
} -> unit Stdlib.Effect.t| E_cmpeq : {out : (bool, Nx_core.Dtype.bool_elt) t;a : ('a16, 'b16) t;b : ('a16, 'b16) t;
} -> unit Stdlib.Effect.t| E_cmpne : {out : (bool, Nx_core.Dtype.bool_elt) t;a : ('a17, 'b17) t;b : ('a17, 'b17) t;
} -> unit Stdlib.Effect.t| E_cmplt : {out : (bool, Nx_core.Dtype.bool_elt) t;a : ('a18, 'b18) t;b : ('a18, 'b18) t;
} -> unit Stdlib.Effect.t| E_cmple : {out : (bool, Nx_core.Dtype.bool_elt) t;a : ('a19, 'b19) t;b : ('a19, 'b19) t;
} -> unit Stdlib.Effect.t| E_neg : {out : ('a20, 'b20) t;t_in : ('a20, 'b20) t;
} -> unit Stdlib.Effect.t| E_sin : {out : ('a21, 'b21) t;t_in : ('a21, 'b21) t;
} -> unit Stdlib.Effect.t| E_sqrt : {out : ('a22, 'b22) t;t_in : ('a22, 'b22) t;
} -> unit Stdlib.Effect.t| E_recip : {out : ('a23, 'b23) t;t_in : ('a23, 'b23) t;
} -> unit Stdlib.Effect.t| E_log : {out : ('a24, 'b24) t;t_in : ('a24, 'b24) t;
} -> unit Stdlib.Effect.t| E_exp : {out : ('a25, 'b25) t;t_in : ('a25, 'b25) t;
} -> unit Stdlib.Effect.t| E_cos : {out : ('a26, 'b26) t;t_in : ('a26, 'b26) t;
} -> unit Stdlib.Effect.t| E_abs : {out : ('a27, 'b27) t;t_in : ('a27, 'b27) t;
} -> unit Stdlib.Effect.t| E_sign : {out : ('a28, 'b28) t;t_in : ('a28, 'b28) t;
} -> unit Stdlib.Effect.t| E_tan : {out : ('a29, 'b29) t;t_in : ('a29, 'b29) t;
} -> unit Stdlib.Effect.t| E_asin : {out : ('a30, 'b30) t;t_in : ('a30, 'b30) t;
} -> unit Stdlib.Effect.t| E_acos : {out : ('a31, 'b31) t;t_in : ('a31, 'b31) t;
} -> unit Stdlib.Effect.t| E_atan : {out : ('a32, 'b32) t;t_in : ('a32, 'b32) t;
} -> unit Stdlib.Effect.t| E_sinh : {out : ('a33, 'b33) t;t_in : ('a33, 'b33) t;
} -> unit Stdlib.Effect.t| E_cosh : {out : ('a34, 'b34) t;t_in : ('a34, 'b34) t;
} -> unit Stdlib.Effect.t| E_tanh : {out : ('a35, 'b35) t;t_in : ('a35, 'b35) t;
} -> unit Stdlib.Effect.t| E_trunc : {out : ('a36, 'b36) t;t_in : ('a36, 'b36) t;
} -> unit Stdlib.Effect.t| E_ceil : {out : ('a37, 'b37) t;t_in : ('a37, 'b37) t;
} -> unit Stdlib.Effect.t| E_floor : {out : ('a38, 'b38) t;t_in : ('a38, 'b38) t;
} -> unit Stdlib.Effect.t| E_round : {out : ('a39, 'b39) t;t_in : ('a39, 'b39) t;
} -> unit Stdlib.Effect.t| E_erf : {out : ('a40, 'b40) t;t_in : ('a40, 'b40) t;
} -> unit Stdlib.Effect.t| E_where : {out : ('a41, 'b41) t;condition : (bool, Nx_core.Dtype.bool_elt) t;if_true : ('a41, 'b41) t;if_false : ('a41, 'b41) t;
} -> unit Stdlib.Effect.t| E_reduce_sum : {out : ('a42, 'b42) t;t_in : ('a42, 'b42) t;axes : int array;keepdims : bool;
} -> unit Stdlib.Effect.t| E_reduce_max : {out : ('a43, 'b43) t;t_in : ('a43, 'b43) t;axes : int array;keepdims : bool;
} -> unit Stdlib.Effect.t| E_reduce_min : {out : ('a44, 'b44) t;t_in : ('a44, 'b44) t;axes : int array;keepdims : bool;
} -> unit Stdlib.Effect.t| E_reduce_prod : {out : ('a45, 'b45) t;t_in : ('a45, 'b45) t;axes : int array;keepdims : bool;
} -> unit Stdlib.Effect.t| E_argmax : {out : (int32, Nx_core.Dtype.int32_elt) t;t_in : ('a46, 'b46) t;axis : int;keepdims : bool;
} -> unit Stdlib.Effect.t| E_argmin : {out : (int32, Nx_core.Dtype.int32_elt) t;t_in : ('a47, 'b47) t;axis : int;keepdims : bool;
} -> unit Stdlib.Effect.t| E_sort : {out : ('a48, 'b48) t;t_in : ('a48, 'b48) t;axis : int;descending : bool;
} -> unit Stdlib.Effect.t| E_argsort : {out : (int32, Nx_core.Dtype.int32_elt) t;t_in : ('a49, 'b49) t;axis : int;descending : bool;
} -> unit Stdlib.Effect.t| E_associative_scan : {t_in : ('a50, 'b50) t;axis : int;op : [ `Max | `Min | `Prod | `Sum ];
} -> ('a50, 'b50) t Stdlib.Effect.t| E_permute : {t_in : ('a51, 'b51) t;axes : int array;
} -> ('a51, 'b51) t Stdlib.Effect.t| E_reshape : {t_in : ('a52, 'b52) t;new_shape : int array;
} -> ('a52, 'b52) t Stdlib.Effect.t| E_expand : {t_in : ('a53, 'b53) t;new_target_shape : int array;
} -> ('a53, 'b53) t Stdlib.Effect.t| E_pad : {t_in : ('a54, 'b54) t;padding_config : (int * int) array;fill_value : 'a54;
} -> ('a54, 'b54) t Stdlib.Effect.t| E_shrink : {t_in : ('a55, 'b55) t;limits : (int * int) array;
} -> ('a55, 'b55) t Stdlib.Effect.t| E_flip : {t_in : ('a56, 'b56) t;dims_to_flip : bool array;
} -> ('a56, 'b56) t Stdlib.Effect.t| E_cat : {t_list : ('a57, 'b57) t list;axis : int;
} -> ('a57, 'b57) t Stdlib.Effect.t| E_cast : {t_in : ('a58, 'b58) t;target_dtype : ('c, 'd) Nx_core.Dtype.t;
} -> ('c, 'd) t Stdlib.Effect.t| E_contiguous : {t_in : ('a59, 'b59) t;
} -> ('a59, 'b59) t Stdlib.Effect.t| E_copy : {t_in : ('a60, 'b60) t;
} -> ('a60, 'b60) t Stdlib.Effect.t| E_assign : {dst : ('a61, 'b61) t;src : ('a61, 'b61) t;
} -> unit Stdlib.Effect.t| E_threefry : {key : (int32, Nx_core.Dtype.int32_elt) t;ctr : (int32, Nx_core.Dtype.int32_elt) t;
} -> (int32, Nx_core.Dtype.int32_elt) t Stdlib.Effect.t| E_gather : {data : ('a62, 'b62) t;indices : (int32, Nx_core.Dtype.int32_elt) t;axis : int;
} -> ('a62, 'b62) t Stdlib.Effect.t| E_scatter : {data_template : ('a63, 'b63) t;indices : (int32, Nx_core.Dtype.int32_elt) t;updates : ('a63, 'b63) t;axis : int;
} -> ('a63, 'b63) t Stdlib.Effect.t| E_to_device : {context : context;t_in : ('a64, 'b64) t;
} -> ('a64, 'b64) t Stdlib.Effect.t| E_unfold : {t_in : ('a65, 'b65) t;kernel_size : int array;stride : int array;dilation : int array;padding : (int * int) array;
} -> ('a65, 'b65) t Stdlib.Effect.t| E_fold : {t_in : ('a66, 'b66) t;output_size : int array;kernel_size : int array;stride : int array;dilation : int array;padding : (int * int) array;
} -> ('a66, 'b66) t Stdlib.Effect.t| E_matmul : {out : ('a67, 'b67) t;a : ('a67, 'b67) t;b : ('a67, 'b67) t;
} -> unit Stdlib.Effect.t| E_fft : {t : (Stdlib.Complex.t, 'b68) t;axes : int array;
} -> (Stdlib.Complex.t, 'b68) t Stdlib.Effect.t| E_ifft : {t : (Stdlib.Complex.t, 'b69) t;axes : int array;
} -> (Stdlib.Complex.t, 'b69) t Stdlib.Effect.t| E_rfft : {t : (float, 'b70) t;axes : int array;
} -> (Stdlib.Complex.t, Nx_core.Dtype.complex64_elt) t Stdlib.Effect.t| E_irfft : {t : (Stdlib.Complex.t, 'b71) t;axes : int array;s : int array option;
} -> (float, Nx_core.Dtype.float64_elt) t Stdlib.Effect.t| E_psum : {t_in : ('a68, 'b72) t;
} -> ('a68, 'b72) t Stdlib.Effect.t| E_cholesky : {t_in : ('a69, 'b73) t;upper : bool;
} -> ('a69, 'b73) t Stdlib.Effect.t| E_qr : {t_in : ('a70, 'b74) t;reduced : bool;
} -> (('a70, 'b74) t * ('a70, 'b74) t) Stdlib.Effect.t| E_svd : {t_in : ('a71, 'b75) t;full_matrices : bool;
} -> (('a71, 'b75) t * (float, Nx_core.Dtype.float64_elt) t * ('a71, 'b75) t)
Stdlib.Effect.t| E_eig : {t_in : ('a72, 'b76) t;vectors : bool;
} -> ((Stdlib.Complex.t, Nx_core.Dtype.complex64_elt) t
* (Stdlib.Complex.t, Nx_core.Dtype.complex64_elt) t option)
Stdlib.Effect.t| E_eigh : {t_in : ('a73, 'b77) t;vectors : bool;
} -> ((float, Nx_core.Dtype.float64_elt) t * ('a73, 'b77) t option)
Stdlib.Effect.t| E_triangular_solve : {a : ('a74, 'b78) t;b : ('a74, 'b78) t;upper : bool;transpose : bool;unit_diag : bool;
} -> ('a74, 'b78) t Stdlib.Effect.t
val create_context : unit -> contextval to_device : context -> ('a, 'b) t -> ('a, 'b) tval unary_op :
out:('a, 'b) t ->
(unit -> 'c Stdlib.Effect.t) ->
(out:('a, 'b) Nx_backend.t -> ('d, 'e) Nx_backend.t -> 'c) ->
('d, 'e) t ->
'cval reduce_op :
out:('a, 'b) t ->
(unit -> 'c Stdlib.Effect.t) ->
(out:('a, 'b) Nx_backend.t ->
axes:'d ->
keepdims:'e ->
('f, 'g) Nx_backend.t ->
'c) ->
axes:'d ->
keepdims:'e ->
('f, 'g) t ->
'cval movement_op :
(unit -> ('a, 'b) t Stdlib.Effect.t) ->
(('c, 'd) Nx_backend.t -> 'e -> ('a, 'b) Nx_backend.t) ->
('c, 'd) t ->
'e ->
('a, 'b) tval assign : ('a, 'b) t -> ('a, 'b) t -> unitval add : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval sub : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval mul : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval max : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval min : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval mod_ : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval pow : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval xor : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval or_ : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval and_ : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval atan2 : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval div : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval neg : out:('a, 'b) t -> ('a, 'b) t -> unitval sin : out:('a, 'b) t -> ('a, 'b) t -> unitval sqrt : out:('a, 'b) t -> ('a, 'b) t -> unitval recip : out:('a, 'b) t -> ('a, 'b) t -> unitval log : out:('a, 'b) t -> ('a, 'b) t -> unitval exp : out:('a, 'b) t -> ('a, 'b) t -> unitval cos : out:('a, 'b) t -> ('a, 'b) t -> unitval abs : out:('a, 'b) t -> ('a, 'b) t -> unitval sign : out:('a, 'b) t -> ('a, 'b) t -> unitval tan : out:('a, 'b) t -> ('a, 'b) t -> unitval asin : out:('a, 'b) t -> ('a, 'b) t -> unitval acos : out:('a, 'b) t -> ('a, 'b) t -> unitval atan : out:('a, 'b) t -> ('a, 'b) t -> unitval sinh : out:('a, 'b) t -> ('a, 'b) t -> unitval cosh : out:('a, 'b) t -> ('a, 'b) t -> unitval tanh : out:('a, 'b) t -> ('a, 'b) t -> unitval trunc : out:('a, 'b) t -> ('a, 'b) t -> unitval ceil : out:('a, 'b) t -> ('a, 'b) t -> unitval floor : out:('a, 'b) t -> ('a, 'b) t -> unitval round : out:('a, 'b) t -> ('a, 'b) t -> unitval erf : out:('a, 'b) t -> ('a, 'b) t -> unitval op_psum : ('a, 'b) t -> ('a, 'b) tval reduce_sum :
out:('a, 'b) t ->
axes:int array ->
keepdims:bool ->
('a, 'b) t ->
unitval reduce_max :
out:('a, 'b) t ->
axes:int array ->
keepdims:bool ->
('a, 'b) t ->
unitval reduce_min :
out:('a, 'b) t ->
axes:int array ->
keepdims:bool ->
('a, 'b) t ->
unitval reduce_prod :
out:('a, 'b) t ->
axes:int array ->
keepdims:bool ->
('a, 'b) t ->
unitval associative_scan :
out:('a, 'b) t ->
axis:int ->
op:[ `Max | `Min | `Prod | `Sum ] ->
('a, 'b) t ->
unitval sort : out:('a, 'b) t -> axis:int -> descending:bool -> ('a, 'b) t -> unitval reshape : ('a, 'b) t -> int array -> ('a, 'b) tval expand : ('a, 'b) t -> int array -> ('a, 'b) tval permute : ('a, 'b) t -> int array -> ('a, 'b) tval shrink : ('a, 'b) t -> (int * int) array -> ('a, 'b) tval flip : ('a, 'b) t -> bool array -> ('a, 'b) tval pad : ('a, 'b) t -> (int * int) array -> 'a -> ('a, 'b) tval contiguous : ('a, 'b) t -> ('a, 'b) tval copy : ('a, 'b) t -> ('a, 'b) tval cat : out:('a, 'b) t -> ('a, 'b) t list -> axis:int -> unitval cast : 'a 'b 'c 'd. out:('c, 'd) t -> ('a, 'b) t -> unitval scatter :
?mode:[ `Add | `Set ] ->
?unique_indices:bool ->
('a, 'b) t ->
indices:(int32, Nx_core.Dtype.int32_elt) t ->
updates:('a, 'b) t ->
axis:int ->
('a, 'b) tval unfold :
('a, 'b) t ->
kernel_size:int array ->
stride:int array ->
dilation:int array ->
padding:(int * int) array ->
('a, 'b) tval fold :
('a, 'b) t ->
output_size:int array ->
kernel_size:int array ->
stride:int array ->
dilation:int array ->
padding:(int * int) array ->
('a, 'b) tval matmul : out:('a, 'b) t -> ('a, 'b) t -> ('a, 'b) t -> unitval fft :
?out:(Stdlib.Complex.t, 'a) t ->
(Stdlib.Complex.t, 'a) t ->
axes:int array ->
(Stdlib.Complex.t, 'a) tval ifft :
?out:(Stdlib.Complex.t, 'a) t ->
(Stdlib.Complex.t, 'a) t ->
axes:int array ->
(Stdlib.Complex.t, 'a) tval rfft :
?out:(Stdlib.Complex.t, 'c) t ->
(float, 'a) t ->
dtype:(Stdlib.Complex.t, 'c) Nx_core.Dtype.t ->
axes:int array ->
(Stdlib.Complex.t, 'c) tval irfft :
?out:(float, 'c) t ->
?s:int array ->
(Stdlib.Complex.t, 'a) t ->
dtype:(float, 'c) Nx_core.Dtype.t ->
axes:int array ->
(float, 'c) tval cholesky : upper:bool -> ('a, 'b) t -> ('a, 'b) tval qr : reduced:bool -> ('a, 'b) t -> ('a, 'b) t * ('a, 'b) tval triangular_solve :
upper:bool ->
transpose:bool ->
unit_diag:bool ->
('a, 'b) t ->
('a, 'b) t ->
('a, 'b) t