Module JubjubEdwards.L

type scalar = L.scalar
type input_kind = [
  1. | `InputCom
  2. | `Private
  3. | `Public
]
type trace_kind = [
  1. | `InputCom
  2. | `NoInput
  3. | `Private
  4. | `Public
]
type 'a repr = 'a L.repr
type 'a t = 'a L.t
val ret : 'a -> 'a t
val let* : 'a t -> ('a -> 'b t) -> 'b t
val (>*) : unit repr t -> 'a t -> 'a t
val (<$>) : 'a t -> ('a -> 'b) -> 'b t
val with_bool_check : bool repr t -> unit repr t
val get_checks_wire : bool repr t
module Input : sig ... end
type 'b open_input_com = 'b L.open_input_com
val serialize : 'a Input.t -> Csir.Scalar.t array
val input : ?kind:input_kind -> 'a Input.t -> 'a repr t
val begin_input_com : 'b -> 'b open_input_com
val (|:) : ('c repr -> 'd) open_input_com -> 'c Input.t -> 'd open_input_com
val end_input_com : 'a open_input_com -> 'a t
val eq : 'a repr -> 'a repr -> bool
val foldM : ('a -> 'b -> 'a t) -> 'a -> 'b list -> 'a t
val pair : 'a repr -> 'b repr -> ('a * 'b) repr
val of_pair : ('a * 'b) repr -> 'a repr * 'b repr
val to_list : 'a repr list -> 'a list repr
val of_list : 'a list repr -> 'a repr list
val hd : 'a list repr -> 'a repr t
val unit : unit repr
val scalar_of_bool : bool repr -> scalar repr
val unsafe_bool_of_scalar : scalar repr -> bool repr
val assert_equal : 'a repr -> 'a repr -> unit repr t
val equal : 'a repr -> 'a repr -> bool repr t
val scalar_of_limbs : nb_bits:int -> scalar list repr -> scalar repr t
val bits_of_scalar : ?shift:Z.t -> nb_bits:int -> scalar repr -> bool list repr t
val limbs_of_scalar : ?shift:Z.t -> total_nb_bits:int -> nb_bits:int -> scalar repr -> scalar list repr t
val with_label : label:string -> 'a t -> 'a t
val debug : string -> 'a repr -> unit repr t
module Limb (N : sig ... end) : sig ... end
module Ecc : sig ... end
module Mod_arith : sig ... end
module Poseidon : sig ... end
module Anemoi : sig ... end
val foldiM : ('a -> int -> 'a t) -> 'a -> int -> 'a t
val fold2M : ('a -> 'b -> 'c -> 'a t) -> 'a -> 'b list -> 'c list -> 'a t
val mapM : ('a -> 'b t) -> 'a list -> 'b list t
val map2M : ('a -> 'b -> 'c t) -> 'a list -> 'b list -> 'c list t
val iterM : ('a -> unit repr t) -> 'a list -> unit repr t
val iter2M : ('a -> 'b -> unit repr t) -> 'a list -> 'b list -> unit repr t
module Bool : sig ... end
module Num : sig ... end
module Enum (N : sig ... end) : sig ... end
module Bytes : sig ... end
module Limbs (N : sig ... end) : sig ... end
val add2 : (scalar * scalar) repr -> (scalar * scalar) repr -> (scalar * scalar) repr t
module Encodings : sig ... end