Mec_curve_utils.EcSourcemodule MakeJacobianWeierstrass
(Fq : Ff_sig.PRIME)
(Fp : Ff_sig.PRIME)
(Params : sig ... end) :
Mec_curve_sig.Ec_sig.JacobianWeierstrassT
with type Scalar.t = Fp.t
and type Base.t = Fq.tmodule MakeAffineWeierstrass
(Fq : Ff_sig.PRIME)
(Fp : Ff_sig.PRIME)
(Params : sig ... end) :
Mec_curve_sig.Ec_sig.AffineWeierstrassT
with type Scalar.t = Fp.t
and type Base.t = Fq.tmodule MakeProjectiveWeierstrass
(Fq : Ff_sig.PRIME)
(Fp : Ff_sig.PRIME)
(Params : sig ... end) :
Mec_curve_sig.Ec_sig.ProjectiveWeierstrassT
with type Scalar.t = Fp.t
and type Base.t = Fq.tmodule MakeAffineMontgomery
(Fq : Ff_sig.PRIME)
(Fp : Ff_sig.PRIME)
(Params : sig ... end) :
Mec_curve_sig.Ec_sig.AffineMontgomeryT
with type Scalar.t = Fp.t
and type Base.t = Fq.tmodule MakeAffineEdwards
(Base : Ff_sig.PRIME)
(Scalar : Ff_sig.PRIME)
(Params : sig ... end) :
Mec_curve_sig.Ec_sig.AffineEdwardsT
with type Base.t = Base.t
and type Scalar.t = Scalar.tval from_affine_weierstrass_to_jacobian_weierstrass :
(module Mec_curve_sig.Ec_sig.AffineWeierstrassT
with type t = 'affine
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
(module Mec_curve_sig.Ec_sig.JacobianWeierstrassT
with type t = 'jacobian
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
'affine ->
'jacobianval from_jacobian_weierstrass_to_affine_weierstrass :
(module Mec_curve_sig.Ec_sig.JacobianWeierstrassT
with type t = 'jacobian
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
(module Mec_curve_sig.Ec_sig.AffineWeierstrassT
with type t = 'affine
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
'jacobian ->
'affineval from_affine_weierstrass_to_projective_weierstrass :
(module Mec_curve_sig.Ec_sig.AffineWeierstrassT
with type t = 'affine
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
(module Mec_curve_sig.Ec_sig.ProjectiveWeierstrassT
with type t = 'projective
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
'affine ->
'projectiveval from_projective_weierstrass_to_affine_weierstrass :
(module Mec_curve_sig.Ec_sig.ProjectiveWeierstrassT
with type t = 'projective
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
(module Mec_curve_sig.Ec_sig.AffineWeierstrassT
with type t = 'affine
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
'projective ->
'affineval from_affine_montgomery_to_affine_weierstrass :
(module Mec_curve_sig.Ec_sig.AffineMontgomeryT
with type t = 'affine_mt
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
(module Mec_curve_sig.Ec_sig.AffineWeierstrassT
with type t = 'affine_wt
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
'affine_mt ->
'affine_wt optionval from_affine_montgomery_to_affine_edwards :
(module Mec_curve_sig.Ec_sig.AffineMontgomeryT
with type t = 'affine_mt
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
(module Mec_curve_sig.Ec_sig.AffineEdwardsT
with type t = 'affine_tw
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
'affine_mt ->
'affine_tw optionval from_affine_edwards_to_affine_montgomery :
(module Mec_curve_sig.Ec_sig.AffineEdwardsT
with type t = 'affine_tw
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
(module Mec_curve_sig.Ec_sig.AffineMontgomeryT
with type t = 'affine_mt
and type Base.t = 'base
and type Scalar.t = 'scalar) ->
'affine_tw ->
'affine_mt optionmodule MakeAffineEdwardsToAffineMontgomery
(E : Mec_curve_sig.Ec_sig.AffineEdwardsT) :
Mec_curve_sig.Ec_sig.AffineMontgomeryT
with module Base = E.Base
and module Scalar = E.Scalar