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 : {a : ('a3, 'b3) t;b : ('a3, 'b3) t;
} -> ('a3, 'b3) t Stdlib.Effect.t| E_sub : {a : ('a4, 'b4) t;b : ('a4, 'b4) t;
} -> ('a4, 'b4) t Stdlib.Effect.t| E_mul : {a : ('a5, 'b5) t;b : ('a5, 'b5) t;
} -> ('a5, 'b5) t Stdlib.Effect.t| E_idiv : {a : ('a6, 'b6) t;b : ('a6, 'b6) t;
} -> ('a6, 'b6) t Stdlib.Effect.t| E_fdiv : {a : ('a7, 'b7) t;b : ('a7, 'b7) t;
} -> ('a7, 'b7) t Stdlib.Effect.t| E_max : {a : ('a8, 'b8) t;b : ('a8, 'b8) t;
} -> ('a8, 'b8) t Stdlib.Effect.t| E_min : {a : ('a9, 'b9) t;b : ('a9, 'b9) t;
} -> ('a9, 'b9) t Stdlib.Effect.t| E_mod : {a : ('a10, 'b10) t;b : ('a10, 'b10) t;
} -> ('a10, 'b10) t Stdlib.Effect.t| E_pow : {a : ('a11, 'b11) t;b : ('a11, 'b11) t;
} -> ('a11, 'b11) t Stdlib.Effect.t| E_xor : {a : ('a12, 'b12) t;b : ('a12, 'b12) t;
} -> ('a12, 'b12) t Stdlib.Effect.t| E_or : {a : ('a13, 'b13) t;b : ('a13, 'b13) t;
} -> ('a13, 'b13) t Stdlib.Effect.t| E_and : {a : ('a14, 'b14) t;b : ('a14, 'b14) t;
} -> ('a14, 'b14) t Stdlib.Effect.t| E_atan2 : {a : ('a15, 'b15) t;b : ('a15, 'b15) t;
} -> ('a15, 'b15) t Stdlib.Effect.t| E_cmpeq : {a : ('a16, 'b16) t;b : ('a16, 'b16) t;
} -> (bool, Nx_core.Dtype.bool_elt) t Stdlib.Effect.t| E_cmpne : {a : ('a17, 'b17) t;b : ('a17, 'b17) t;
} -> (bool, Nx_core.Dtype.bool_elt) t Stdlib.Effect.t| E_cmplt : {a : ('a18, 'b18) t;b : ('a18, 'b18) t;
} -> (bool, Nx_core.Dtype.bool_elt) t Stdlib.Effect.t| E_cmple : {a : ('a19, 'b19) t;b : ('a19, 'b19) t;
} -> (bool, Nx_core.Dtype.bool_elt) t Stdlib.Effect.t| E_neg : {t_in : ('a20, 'b20) t;
} -> ('a20, 'b20) t Stdlib.Effect.t| E_sin : {t_in : ('a21, 'b21) t;
} -> ('a21, 'b21) t Stdlib.Effect.t| E_sqrt : {t_in : ('a22, 'b22) t;
} -> ('a22, 'b22) t Stdlib.Effect.t| E_recip : {t_in : ('a23, 'b23) t;
} -> ('a23, 'b23) t Stdlib.Effect.t| E_log : {t_in : ('a24, 'b24) t;
} -> ('a24, 'b24) t Stdlib.Effect.t| E_exp : {t_in : ('a25, 'b25) t;
} -> ('a25, 'b25) t Stdlib.Effect.t| E_cos : {t_in : ('a26, 'b26) t;
} -> ('a26, 'b26) t Stdlib.Effect.t| E_abs : {t_in : ('a27, 'b27) t;
} -> ('a27, 'b27) t Stdlib.Effect.t| E_sign : {t_in : ('a28, 'b28) t;
} -> ('a28, 'b28) t Stdlib.Effect.t| E_tan : {t_in : ('a29, 'b29) t;
} -> ('a29, 'b29) t Stdlib.Effect.t| E_asin : {t_in : ('a30, 'b30) t;
} -> ('a30, 'b30) t Stdlib.Effect.t| E_acos : {t_in : ('a31, 'b31) t;
} -> ('a31, 'b31) t Stdlib.Effect.t| E_atan : {t_in : ('a32, 'b32) t;
} -> ('a32, 'b32) t Stdlib.Effect.t| E_sinh : {t_in : ('a33, 'b33) t;
} -> ('a33, 'b33) t Stdlib.Effect.t| E_cosh : {t_in : ('a34, 'b34) t;
} -> ('a34, 'b34) t Stdlib.Effect.t| E_tanh : {t_in : ('a35, 'b35) t;
} -> ('a35, 'b35) t Stdlib.Effect.t| E_trunc : {t_in : ('a36, 'b36) t;
} -> ('a36, 'b36) t Stdlib.Effect.t| E_ceil : {t_in : ('a37, 'b37) t;
} -> ('a37, 'b37) t Stdlib.Effect.t| E_floor : {t_in : ('a38, 'b38) t;
} -> ('a38, 'b38) t Stdlib.Effect.t| E_round : {t_in : ('a39, 'b39) t;
} -> ('a39, 'b39) t Stdlib.Effect.t| E_erf : {t_in : ('a40, 'b40) t;
} -> ('a40, 'b40) t Stdlib.Effect.t| E_where : {condition : (bool, Nx_core.Dtype.bool_elt) t;if_true : ('a41, 'b41) t;if_false : ('a41, 'b41) t;
} -> ('a41, 'b41) t Stdlib.Effect.t| E_reduce_sum : {t_in : ('a42, 'b42) t;axes : int array;keepdims : bool;
} -> ('a42, 'b42) t Stdlib.Effect.t| E_reduce_max : {t_in : ('a43, 'b43) t;axes : int array;keepdims : bool;
} -> ('a43, 'b43) t Stdlib.Effect.t| E_reduce_min : {t_in : ('a44, 'b44) t;axes : int array;keepdims : bool;
} -> ('a44, 'b44) t Stdlib.Effect.t| E_reduce_prod : {t_in : ('a45, 'b45) t;axes : int array;keepdims : bool;
} -> ('a45, 'b45) t Stdlib.Effect.t| E_argmax : {t_in : ('a46, 'b46) t;axis : int;keepdims : bool;
} -> (int32, Nx_core.Dtype.int32_elt) t Stdlib.Effect.t| E_argmin : {t_in : ('a47, 'b47) t;axis : int;keepdims : bool;
} -> (int32, Nx_core.Dtype.int32_elt) t Stdlib.Effect.t| E_sort : {t_in : ('a48, 'b48) t;axis : int;descending : bool;
} -> ('a48, 'b48) t Stdlib.Effect.t| E_argsort : {t_in : ('a49, 'b49) t;axis : int;descending : bool;
} -> (int32, Nx_core.Dtype.int32_elt) t 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;mode : [ `Add | `Set ];unique_indices : bool;
} -> ('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 : {a : ('a67, 'b67) t;b : ('a67, 'b67) t;
} -> ('a67, 'b67) t 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;dtype : (Stdlib.Complex.t, 'c0) Nx_core.Dtype.t;axes : int array;
} -> (Stdlib.Complex.t, 'c0) t Stdlib.Effect.t| E_irfft : {t : (Stdlib.Complex.t, 'b71) t;dtype : (float, 'c1) Nx_core.Dtype.t;axes : int array;s : int array option;
} -> (float, 'c1) 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| E_to_host : ('a75, 'b79) t -> ('a75, 'b79) host_buffer Stdlib.Effect.t
val deferred_id_counter : int Stdlib.refval deferred_id : 'a 'b. ('a, 'b) t -> int optionval create_context : unit -> contextval context : 'a 'b. ('a, 'b) t -> contextval to_device : context -> ('a, 'b) t -> ('a, 'b) tval reduce_op :
(unit -> ('a, 'b) t Stdlib.Effect.t) ->
(axes:'c -> keepdims:'d -> ('e, 'f) Nx_backend.t -> ('a, 'b) Nx_backend.t) ->
axes:'c ->
keepdims:'d ->
('e, 'f) t ->
('a, 'b) tval 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 : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval sub : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval mul : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval max : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval min : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval mod_ : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval pow : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval xor : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval or_ : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval and_ : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval atan2 : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval div : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval neg : ('a, 'b) t -> ('a, 'b) tval sin : ('a, 'b) t -> ('a, 'b) tval sqrt : ('a, 'b) t -> ('a, 'b) tval recip : ('a, 'b) t -> ('a, 'b) tval log : ('a, 'b) t -> ('a, 'b) tval exp : ('a, 'b) t -> ('a, 'b) tval cos : ('a, 'b) t -> ('a, 'b) tval abs : ('a, 'b) t -> ('a, 'b) tval sign : ('a, 'b) t -> ('a, 'b) tval tan : ('a, 'b) t -> ('a, 'b) tval asin : ('a, 'b) t -> ('a, 'b) tval acos : ('a, 'b) t -> ('a, 'b) tval atan : ('a, 'b) t -> ('a, 'b) tval sinh : ('a, 'b) t -> ('a, 'b) tval cosh : ('a, 'b) t -> ('a, 'b) tval tanh : ('a, 'b) t -> ('a, 'b) tval trunc : ('a, 'b) t -> ('a, 'b) tval ceil : ('a, 'b) t -> ('a, 'b) tval floor : ('a, 'b) t -> ('a, 'b) tval round : ('a, 'b) t -> ('a, 'b) tval erf : ('a, 'b) t -> ('a, 'b) tval op_psum : ('a, 'b) t -> ('a, 'b) tval reduce_sum : axes:int array -> keepdims:bool -> ('a, 'b) t -> ('a, 'b) tval reduce_max : axes:int array -> keepdims:bool -> ('a, 'b) t -> ('a, 'b) tval reduce_min : axes:int array -> keepdims:bool -> ('a, 'b) t -> ('a, 'b) tval reduce_prod : axes:int array -> keepdims:bool -> ('a, 'b) t -> ('a, 'b) tval associative_scan :
axis:int ->
op:[ `Max | `Min | `Prod | `Sum ] ->
('a, 'b) t ->
('a, 'b) tval sort : axis:int -> descending:bool -> ('a, 'b) t -> ('a, 'b) tval 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 : ('a, 'b) t list -> axis:int -> ('a, 'b) tval scatter :
?mode:??? ->
?unique_indices:??? ->
('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 : ('a, 'b) t -> ('a, 'b) t -> ('a, 'b) tval fft :
?out:??? ->
(Stdlib.Complex.t, 'a) t ->
axes:int array ->
(Stdlib.Complex.t, 'a) tval ifft :
?out:??? ->
(Stdlib.Complex.t, 'a) t ->
axes:int array ->
(Stdlib.Complex.t, 'a) tval rfft :
?out:??? ->
(float, 'a) t ->
dtype:(Stdlib.Complex.t, 'c) Nx_core.Dtype.t ->
axes:int array ->
(Stdlib.Complex.t, 'c) tval irfft :
?out:??? ->
?s:??? ->
(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