Field_extensions.F4
module Fq2 :
Intf.S_with_primitive_element
with type 'a A.t = 'a * 'a
and type 'a Base.t_ = 'a
module Params : sig ... end
module Impl : sig ... end
module Base : sig ... end
module A : sig ... end
val to_list : 'a t_ -> 'a list
module Unchecked : sig ... end
val typ : ( t, Unchecked.t ) Impl.Typ.t
val constant : Unchecked.t -> t
val to_constant : t -> Unchecked.t option
val scale : t -> Impl.Field.t -> t
val mul_field : t -> Impl.Field.Var.t -> t Impl.Checked.t
val assert_r1cs : t -> t -> t -> unit Impl.Checked.t
val if_ : Impl.Boolean.var -> then_:t -> else_:t -> t Impl.Checked.t
val real_part : 'a t_ -> 'a
val equal : t -> t -> Impl.Boolean.var Impl.Checked.t
val assert_square : t -> t -> unit Impl.Checked.t
val assert_equal : t -> t -> unit Impl.Checked.t
val (*) : t -> t -> t Impl.Checked.t
val square : t -> t Impl.Checked.t
val div_unsafe : t -> t -> t Impl.Checked.t
val inv_exn : t -> t Impl.Checked.t
val zero : t
val one : t
val special_mul : t -> t -> t Impl.Checked.t
val special_div : t -> t -> t Impl.Checked.t
val cyclotomic_square : (Fq2.t * Fq2.t) -> (Fq2.t * Fq2.t) Fq2.Impl.Checked.t
val frobenius :
(('a * Impl.field Snarky_backendless.Cvar.t)
* (Impl.field Snarky_backendless.Cvar.t
* Impl.field Snarky_backendless.Cvar.t)) ->
int ->
('b * Impl.field Snarky_backendless.Cvar.t)
* (Impl.field Snarky_backendless.Cvar.t
* Impl.field Snarky_backendless.Cvar.t)