diff options
author | 2017-10-15 22:12:34 -0400 | |
---|---|---|
committer | 2017-10-18 23:01:29 -0400 | |
commit | a17f3ea44a09638f0d78428290a96ecce613ad65 (patch) | |
tree | b6e955a57aeff83534d68b3ea0a87f47a1dec302 /src/Specific | |
parent | 8f8bcf29a8c53d18eb24619703fa6c5f324382d9 (diff) |
Explicitly specify base
This allows it to be something other than log2(m)/sz.
After | File Name | Before || Change
-------------------------------------------------------------------------------------------
8m20.82s | Total | 8m37.82s || -0m17.00s
-------------------------------------------------------------------------------------------
1m59.42s | Specific/NISTP256/AMD64/femul | 2m19.09s || -0m19.67s
3m28.66s | Specific/X25519/C64/ladderstep | 3m28.02s || +0m00.63s
0m24.97s | Specific/X25519/C64/femul | 0m24.60s || +0m00.36s
0m24.08s | Specific/NISTP256/AMD64/fesub | 0m23.48s || +0m00.59s
0m22.00s | Specific/NISTP256/AMD64/feadd | 0m21.34s || +0m00.66s
0m20.34s | Specific/X25519/C64/freeze | 0m19.76s || +0m00.57s
0m19.85s | Specific/X25519/C64/fesquare | 0m19.93s || -0m00.07s
0m18.04s | Specific/NISTP256/AMD64/feopp | 0m17.69s || +0m00.34s
0m15.10s | Specific/NISTP256/AMD64/fenz | 0m15.37s || -0m00.26s
0m08.31s | Specific/NISTP256/AMD64/Synthesis | 0m08.24s || +0m00.07s
0m05.96s | Specific/X25519/C64/Synthesis | 0m06.25s || -0m00.29s
0m02.10s | Specific/Framework/ArithmeticSynthesis/Defaults | 0m02.14s || -0m00.04s
0m01.00s | Specific/Framework/SynthesisFramework | 0m01.03s || -0m00.03s
0m00.97s | Specific/Framework/ArithmeticSynthesis/Base | 0m01.02s || -0m00.05s
0m00.89s | Specific/Framework/ArithmeticSynthesis/Freeze | 0m00.84s || +0m00.05s
0m00.80s | Specific/Framework/ArithmeticSynthesis/Karatsuba | 0m00.81s || -0m00.01s
0m00.79s | Specific/Framework/ArithmeticSynthesis/MontgomeryPackage | 0m00.80s || -0m00.01s
0m00.76s | Specific/Framework/MontgomeryReificationTypesPackage | 0m00.75s || +0m00.01s
0m00.74s | Specific/Framework/ReificationTypesPackage | 0m00.77s || -0m00.03s
0m00.74s | Specific/Framework/ArithmeticSynthesis/BasePackage | 0m00.74s || +0m00.00s
0m00.73s | Specific/Framework/ArithmeticSynthesis/SquareFromMul | 0m00.70s || +0m00.03s
0m00.72s | Specific/Framework/ArithmeticSynthesis/DefaultsPackage | 0m00.68s || +0m00.03s
0m00.70s | Specific/Framework/ArithmeticSynthesis/LadderstepPackage | 0m00.72s || -0m00.02s
0m00.70s | Specific/Framework/ArithmeticSynthesis/FreezePackage | 0m00.77s || -0m00.07s
0m00.69s | Specific/Framework/ArithmeticSynthesis/KaratsubaPackage | 0m00.70s || -0m00.01s
0m00.42s | Specific/X25519/C64/CurveParameters | 0m00.38s || +0m00.03s
0m00.36s | Specific/Framework/CurveParameters | 0m00.32s || +0m00.03s
0m00.33s | Specific/Framework/RawCurveParameters | 0m00.29s || +0m00.04s
0m00.33s | Specific/Framework/CurveParametersPackage | 0m00.30s || +0m00.03s
0m00.32s | Specific/NISTP256/AMD64/CurveParameters | 0m00.30s || +0m00.02s
Diffstat (limited to 'src/Specific')
304 files changed, 475 insertions, 122 deletions
diff --git a/src/Specific/Framework/ArithmeticSynthesis/Base.v b/src/Specific/Framework/ArithmeticSynthesis/Base.v index 2bf9719f0..541069d94 100644 --- a/src/Specific/Framework/ArithmeticSynthesis/Base.v +++ b/src/Specific/Framework/ArithmeticSynthesis/Base.v @@ -1,5 +1,7 @@ Require Import Coq.ZArith.ZArith Coq.ZArith.BinIntDef. Require Import Coq.Lists.List. Import ListNotations. +Require Import Coq.micromega.Lia. +Require Import Coq.QArith.QArith_base. Require Import Crypto.Arithmetic.Core. Import B. Require Import Crypto.Specific.Framework.CurveParameters. Require Import Crypto.Specific.Framework.ArithmeticSynthesis.HelperTactics. @@ -30,15 +32,17 @@ Section wt. Local Coercion QArith_base.inject_Z : Z >-> Q. Local Coercion Z.of_nat : nat >-> Z. Local Coercion Z.pos : positive >-> Z. - Definition wt_gen (m : positive) (sz : nat) (i:nat) : Z := 2^Qceiling((Z.log2_up m/sz)*i). + Definition wt_gen (base : Q) (i:nat) : Z := 2^Qceiling(base*i). End wt. Section gen. - Context (m : positive) + Context (base : Q) + (m : positive) (sz : nat) - (coef_div_modulus : nat). + (coef_div_modulus : nat) + (base_pos : (1 <= base)%Q). - Local Notation wt := (wt_gen m sz). + Local Notation wt := (wt_gen base). Definition sz2' := ((sz * 2) - 1)%nat. @@ -50,69 +54,62 @@ Section gen. Lemma sz2'_nonzero (sz_nonzero : sz <> 0%nat) : sz2' <> 0%nat. - Proof. clear -sz_nonzero; cbv [sz2']; omega. Qed. + Proof using Type. clear -sz_nonzero; cbv [sz2']; omega. Qed. Local Ltac Q_cbv := - cbv [wt_gen Qround.Qceiling QArith_base.Qmult QArith_base.Qdiv QArith_base.inject_Z QArith_base.Qden QArith_base.Qnum QArith_base.Qopp Qround.Qfloor QArith_base.Qinv QArith_base.Qle Z.of_nat]. + cbv [wt_gen Qround.Qceiling QArith_base.Qmult QArith_base.Qdiv QArith_base.inject_Z QArith_base.Qden QArith_base.Qnum QArith_base.Qopp Qround.Qfloor QArith_base.Qinv QArith_base.Qle QArith_base.Qeq Z.of_nat] in *. Lemma wt_gen0_1 : wt 0 = 1. - Proof. + Proof using Type. Q_cbv; simpl. autorewrite with zsimplify_const; reflexivity. Qed. Lemma wt_gen_nonzero : forall i, wt i <> 0. - Proof. + Proof using base_pos. eapply pow_ceil_mul_nat_nonzero; [ omega | ]. - destruct sz; Q_cbv; - autorewrite with zsimplify_const; [ omega | ]. - apply Z.log2_up_nonneg. + destruct base; Q_cbv; lia. Qed. Lemma wt_gen_nonneg : forall i, 0 <= wt i. - Proof. apply pow_ceil_mul_nat_nonneg; omega. Qed. + Proof using Type. apply pow_ceil_mul_nat_nonneg; omega. Qed. Lemma wt_gen_pos : forall i, wt i > 0. - Proof. + Proof using base_pos. intro i; pose proof (wt_gen_nonzero i); pose proof (wt_gen_nonneg i). omega. Qed. Lemma wt_gen_multiples : forall i, wt (S i) mod (wt i) = 0. - Proof. - apply pow_ceil_mul_nat_multiples. - destruct sz; Q_cbv; autorewrite with zsimplify_const; - auto using Z.log2_up_nonneg, Z.le_refl. + Proof using base_pos. + apply pow_ceil_mul_nat_multiples; destruct base; Q_cbv; lia. Qed. Section divides. - Context (sz_nonzero : sz <> 0%nat) - (sz_small : Z.of_nat sz <= Z.log2_up (Z.pos m)). - Lemma wt_gen_divides : forall i, wt (S i) / wt i > 0. - Proof. + Proof using base_pos. apply pow_ceil_mul_nat_divide; [ omega | ]. - destruct sz; Q_cbv; autorewrite with zsimplify_const; [ congruence | ]. - rewrite Pos.mul_1_l; assumption. + destruct base; Q_cbv; lia. Qed. + Lemma wt_gen_divides' : forall i, wt (S i) / wt i <> 0. - Proof. + Proof using base_pos. symmetry; apply Z.lt_neq, Z.gt_lt_iff, wt_gen_divides; assumption. Qed. Lemma wt_gen_div_bound : forall i, wt (S i) / wt i <= wt 1. - Proof. + Proof using base_pos. intro; etransitivity. eapply pow_ceil_mul_nat_divide_upperbound; [ omega | ]. - all:destruct sz; Q_cbv; autorewrite with zsimplify_const; + all:destruct base; Q_cbv; autorewrite with zsimplify_const; rewrite ?Pos.mul_1_l, ?Pos.mul_1_r; try assumption; omega. Qed. Lemma wt_gen_divides_chain carry_chain : forall i (H:In i carry_chain), wt (S i) / wt i <> 0. - Proof. intros i ?; apply wt_gen_divides'; assumption. Qed. + Proof using base_pos. intros i ?; apply wt_gen_divides'; assumption. Qed. Lemma wt_gen_divides_chains carry_chains @@ -123,7 +120,7 @@ Section gen. (fun carry_chain => forall i (H:In i carry_chain), wt (S i) / wt i <> 0) carry_chains). - Proof. + Proof using base_pos. induction carry_chains as [|carry_chain carry_chains IHcarry_chains]; constructor; eauto using wt_gen_divides_chain. Qed. @@ -137,9 +134,8 @@ Section gen. end) (Positional.zeros sz) coef_div_modulus. Lemma coef_mod' - (sz_le_log2_m : Z.of_nat sz <= Z.log2_up (Z.pos m)) : mod_eq m (Positional.eval (n:=sz) wt coef') 0. - Proof. + Proof using base_pos. cbv [coef' m_enc']. remember (Positional.zeros sz) as v eqn:Hv. assert (Hv' : mod_eq m (Positional.eval wt v) 0) @@ -163,8 +159,8 @@ Section gen. Qed. End gen. -Ltac pose_wt m sz wt := - let v := (eval cbv [wt_gen] in (wt_gen m sz)) in +Ltac pose_wt base wt := + let v := (eval cbv [wt_gen] in (wt_gen base)) in cache_term v wt. Ltac pose_sz2 sz sz2 := @@ -193,24 +189,31 @@ Ltac pose_sz_le_log2_m sz m sz_le_log2_m := ltac:(vm_decide_no_check) sz_le_log2_m. +Ltac pose_base_pos base base_pos := + cache_proof_with_type_by + ((1 <= base)%Q) + ltac:(vm_decide_no_check) + base_pos. + Ltac pose_m_correct m s c m_correct := cache_proof_with_type_by (Z.pos m = s - Associational.eval c) ltac:(vm_decide_no_check) m_correct. -Ltac pose_m_enc sz m m_enc := - let v := (eval vm_compute in (m_enc' m sz)) in +Ltac pose_m_enc base m sz m_enc := + let v := (eval vm_compute in (m_enc' base m sz)) in let v := (eval compute in v) in (* compute away the type arguments *) cache_term v m_enc. -Ltac pose_coef sz m coef_div_modulus coef := (* subtraction coefficient *) - let v := (eval vm_compute in (coef' m sz coef_div_modulus)) in + +Ltac pose_coef base m sz coef_div_modulus coef := (* subtraction coefficient *) + let v := (eval vm_compute in (coef' base m sz coef_div_modulus)) in cache_term v coef. -Ltac pose_coef_mod sz wt m coef coef_div_modulus sz_le_log2_m coef_mod := +Ltac pose_coef_mod wt coef base m sz coef_div_modulus base_pos coef_mod := cache_proof_with_type_by (mod_eq m (Positional.eval (n:=sz) wt coef) 0) - ltac:(vm_cast_no_check (coef_mod' m sz coef_div_modulus sz_le_log2_m)) + ltac:(vm_cast_no_check (coef_mod' base m sz coef_div_modulus base_pos)) coef_mod. Ltac pose_sz_nonzero sz sz_nonzero := cache_proof_with_type_by @@ -238,6 +241,7 @@ Ltac pose_wt_divides' wt wt_divides wt_divides' := (forall i, wt (S i) / wt i <> 0) ltac:(apply wt_gen_divides'; vm_decide_no_check) wt_divides'. + Ltac pose_wt_divides_chains wt carry_chains wt_divides_chains := let T := (eval cbv [carry_chains List.fold_right List.map] in (List.fold_right @@ -249,7 +253,7 @@ Ltac pose_wt_divides_chains wt carry_chains wt_divides_chains := carry_chains))) in cache_proof_with_type_by T - ltac:(refine (@wt_gen_divides_chains _ _ _ _ carry_chains); vm_decide_no_check) + ltac:(refine (@wt_gen_divides_chains _ _ carry_chains); vm_decide_no_check) wt_divides_chains. Ltac pose_wt_pos wt wt_pos := diff --git a/src/Specific/Framework/ArithmeticSynthesis/BasePackage.v b/src/Specific/Framework/ArithmeticSynthesis/BasePackage.v index d5b4e567c..80e032fb8 100644 --- a/src/Specific/Framework/ArithmeticSynthesis/BasePackage.v +++ b/src/Specific/Framework/ArithmeticSynthesis/BasePackage.v @@ -5,7 +5,7 @@ Require Import Crypto.Specific.Framework.Packages. Require Import Crypto.Util.TagList. Module TAG. - Inductive tags := r | m | wt | sz2 | half_sz | half_sz_nonzero | s_nonzero | sz_le_log2_m | m_correct | m_enc | coef | coef_mod | sz_nonzero | wt_nonzero | wt_nonneg | wt_divides | wt_divides' | wt_divides_chains | wt_pos | wt_multiples | c_small | m_enc_bounded | m_correct_wt. + Inductive tags := r | m | wt | sz2 | half_sz | half_sz_nonzero | s_nonzero | sz_le_log2_m | base_pos | m_correct | m_enc | coef | coef_mod | sz_nonzero | wt_nonzero | wt_nonneg | wt_divides | wt_divides' | wt_divides_chains | wt_pos | wt_multiples | c_small | m_enc_bounded | m_correct_wt. End TAG. Ltac add_r pkg := @@ -22,10 +22,9 @@ Ltac add_m pkg := Tag.update pkg TAG.m m. Ltac add_wt pkg := - let m := Tag.get pkg TAG.m in - let sz := Tag.get pkg TAG.sz in + let base := Tag.get pkg TAG.base in let wt := fresh "wt" in - let wt := pose_wt m sz wt in + let wt := pose_wt base wt in Tag.update pkg TAG.wt wt. Ltac add_sz2 pkg := @@ -59,6 +58,12 @@ Ltac add_sz_le_log2_m pkg := let sz_le_log2_m := pose_sz_le_log2_m sz m sz_le_log2_m in Tag.update pkg TAG.sz_le_log2_m sz_le_log2_m. +Ltac add_base_pos pkg := + let base := Tag.get pkg TAG.base in + let base_pos := fresh "base_pos" in + let base_pos := pose_base_pos base base_pos in + Tag.update pkg TAG.base_pos base_pos. + Ltac add_m_correct pkg := let m := Tag.get pkg TAG.m in let s := Tag.get pkg TAG.s in @@ -68,29 +73,32 @@ Ltac add_m_correct pkg := Tag.update pkg TAG.m_correct m_correct. Ltac add_m_enc pkg := - let sz := Tag.get pkg TAG.sz in + let base := Tag.get pkg TAG.base in let m := Tag.get pkg TAG.m in + let sz := Tag.get pkg TAG.sz in let m_enc := fresh "m_enc" in - let m_enc := pose_m_enc sz m m_enc in + let m_enc := pose_m_enc base m sz m_enc in Tag.update pkg TAG.m_enc m_enc. Ltac add_coef pkg := - let sz := Tag.get pkg TAG.sz in + let base := Tag.get pkg TAG.base in let m := Tag.get pkg TAG.m in + let sz := Tag.get pkg TAG.sz in let coef_div_modulus := Tag.get pkg TAG.coef_div_modulus in let coef := fresh "coef" in - let coef := pose_coef sz m coef_div_modulus coef in + let coef := pose_coef base m sz coef_div_modulus coef in Tag.update pkg TAG.coef coef. Ltac add_coef_mod pkg := - let sz := Tag.get pkg TAG.sz in let wt := Tag.get pkg TAG.wt in - let m := Tag.get pkg TAG.m in let coef := Tag.get pkg TAG.coef in + let base := Tag.get pkg TAG.base in + let m := Tag.get pkg TAG.m in + let sz := Tag.get pkg TAG.sz in let coef_div_modulus := Tag.get pkg TAG.coef_div_modulus in - let sz_le_log2_m := Tag.get pkg TAG.sz_le_log2_m in + let base_pos := Tag.get pkg TAG.base_pos in let coef_mod := fresh "coef_mod" in - let coef_mod := pose_coef_mod sz wt m coef coef_div_modulus sz_le_log2_m coef_mod in + let coef_mod := pose_coef_mod wt coef base m sz coef_div_modulus base_pos coef_mod in Tag.update pkg TAG.coef_mod coef_mod. Ltac add_sz_nonzero pkg := @@ -177,6 +185,7 @@ Ltac add_Base_package pkg := let pkg := add_half_sz_nonzero pkg in let pkg := add_s_nonzero pkg in let pkg := add_sz_le_log2_m pkg in + let pkg := add_base_pos pkg in let pkg := add_m_correct pkg in let pkg := add_m_enc pkg in let pkg := add_coef pkg in @@ -214,6 +223,8 @@ Module MakeBasePackage (PKG : PrePackage). Notation s_nonzero := (ltac:(let v := get_s_nonzero () in exact v)) (only parsing). Ltac get_sz_le_log2_m _ := get TAG.sz_le_log2_m. Notation sz_le_log2_m := (ltac:(let v := get_sz_le_log2_m () in exact v)) (only parsing). + Ltac get_base_pos _ := get TAG.base_pos. + Notation base_pos := (ltac:(let v := get_base_pos () in exact v)) (only parsing). Ltac get_m_correct _ := get TAG.m_correct. Notation m_correct := (ltac:(let v := get_m_correct () in exact v)) (only parsing). Ltac get_m_enc _ := get TAG.m_enc. diff --git a/src/Specific/Framework/ArithmeticSynthesis/Defaults.v b/src/Specific/Framework/ArithmeticSynthesis/Defaults.v index 42c49f46d..36e02bb0e 100644 --- a/src/Specific/Framework/ArithmeticSynthesis/Defaults.v +++ b/src/Specific/Framework/ArithmeticSynthesis/Defaults.v @@ -1,4 +1,5 @@ Require Import Coq.ZArith.ZArith Coq.ZArith.BinIntDef. +Require Import Coq.QArith.QArith_base. Require Import Coq.Lists.List. Import ListNotations. Require Import Crypto.Arithmetic.CoreUnfolder. Require Import Crypto.Arithmetic.Core. Import B. @@ -38,8 +39,8 @@ Local Ltac solve_constant_local_sig := | [ |- { c : Z^?sz | Positional.Fdecode (m:=?M) ?wt c = ?v } ] => (exists (Positional.encode (n:=sz) (modulo:=modulo) (div:=div) wt (F.to_Z (m:=M) v))); lazymatch goal with - | [ sz_nonzero : sz <> 0%nat, sz_le_log2_m : Z.of_nat sz <= Z.log2_up (Z.pos M) |- _ ] - => clear -sz_nonzero sz_le_log2_m + | [ sz_nonzero : sz <> 0%nat, base_pos : (1 <= _)%Q |- _ ] + => clear -base_pos sz_nonzero end end; abstract ( @@ -50,6 +51,7 @@ Local Ltac solve_constant_local_sig := Section gen. Context (m : positive) + (base : Q) (sz : nat) (s : Z) (c : list limb) @@ -59,12 +61,13 @@ Section gen. (square_code : option (Z^sz -> Z^sz)) (sz_nonzero : sz <> 0%nat) (s_nonzero : s <> 0) + (base_pos : (1 <= base)%Q) (sz_le_log2_m : Z.of_nat sz <= Z.log2_up (Z.pos m)). - Local Notation wt := (wt_gen m sz). + Local Notation wt := (wt_gen base). Local Notation sz2 := (sz2' sz). - Local Notation wt_divides' := (wt_gen_divides' m sz sz_nonzero sz_le_log2_m). - Local Notation wt_nonzero := (wt_gen_nonzero m sz). + Local Notation wt_divides' := (wt_gen_divides' base base_pos). + Local Notation wt_nonzero := (wt_gen_nonzero base base_pos). (* side condition needs cbv [Positional.mul_cps Positional.reduce_cps]. *) Context (mul_code_correct @@ -99,9 +102,9 @@ Section gen. Proof. let a := fresh "a" in eexists; cbv beta zeta; intros a. - pose proof (wt_gen0_1 m sz). + pose proof (wt_gen0_1 base). pose proof wt_nonzero; pose proof div_mod. - pose proof (wt_gen_divides_chains m sz sz_nonzero sz_le_log2_m carry_chains). + pose proof (wt_gen_divides_chains base base_pos carry_chains). pose proof wt_divides'. let x := constr:(chained_carries' sz wt s c a carry_chains) in presolve_op_F constr:(wt) x; @@ -148,7 +151,7 @@ Section gen. Proof. eexists; cbv beta zeta; intros a b. pose proof wt_nonzero. - pose proof (wt_gen0_1 m sz). + pose proof (wt_gen0_1 base). let x := constr:( Positional.add_cps (n := sz) wt a b id) in presolve_op_F constr:(wt) x; @@ -166,7 +169,7 @@ Section gen. let b := fresh "b" in eexists; cbv beta zeta; intros a b. pose proof wt_nonzero. - pose proof (wt_gen0_1 m sz). + pose proof (wt_gen0_1 base). let x := constr:( Positional.sub_cps (n:=sz) (coef := coef) wt a b id) in presolve_op_F constr:(wt) x; @@ -182,7 +185,7 @@ Section gen. Proof. eexists; cbv beta zeta; intros a. pose proof wt_nonzero. - pose proof (wt_gen0_1 m sz). + pose proof (wt_gen0_1 base). let x := constr:( Positional.opp_cps (n:=sz) (coef := coef) wt a id) in presolve_op_F constr:(wt) x; @@ -198,7 +201,7 @@ Section gen. Proof. eexists; cbv beta zeta; intros a b. pose proof wt_nonzero. - pose proof (wt_gen0_1 m sz). + pose proof (wt_gen0_1 base). pose proof (sz2'_nonzero sz sz_nonzero). let x := constr:( Positional.mul_cps (n:=sz) (m:=sz2) wt a b @@ -224,7 +227,7 @@ Section gen. Proof. eexists; cbv beta zeta; intros a. pose proof wt_nonzero. - pose proof (wt_gen0_1 m sz). + pose proof (wt_gen0_1 base). pose proof (sz2'_nonzero sz sz_nonzero). let x := constr:( Positional.mul_cps (n:=sz) (m:=sz2) wt a a @@ -263,7 +266,7 @@ Section gen. (Positional.Fdecode_Fencode_id (sz_nonzero := sz_nonzero) (div_mod := div_mod) - wt (wt_gen0_1 m sz) wt_nonzero wt_divides') + wt (wt_gen0_1 base) wt_nonzero wt_divides') (Positional.eq_Feq_iff wt) _ _ _); lazymatch goal with @@ -324,25 +327,25 @@ Ltac cache_sig_with_type_by_existing_sig ty existing_sig id := ltac:(fun _ => cbv [carry_sig' constant_sig' zero_sig' one_sig' add_sig' sub_sig' mul_sig' square_sig' opp_sig']) ty existing_sig id. -Ltac pose_carry_sig sz m wt s c carry_chains carry_sig := +Ltac pose_carry_sig wt m base sz s c carry_chains carry_sig := cache_sig_with_type_by_existing_sig {carry : (Z^sz -> Z^sz)%type | forall a : Z^sz, let eval := Positional.Fdecode (m := m) wt in eval (carry a) = eval a} - (carry_sig' m sz s c carry_chains) + (carry_sig' m base sz s c carry_chains) carry_sig. -Ltac pose_zero_sig sz m wt sz_nonzero sz_le_log2_m zero_sig := +Ltac pose_zero_sig wt m base sz sz_nonzero base_pos zero_sig := cache_vm_sig_with_type { zero : Z^sz | Positional.Fdecode (m:=m) wt zero = 0%F} - (zero_sig' m sz sz_nonzero sz_le_log2_m) + (zero_sig' m base sz sz_nonzero base_pos) zero_sig. -Ltac pose_one_sig sz m wt sz_nonzero sz_le_log2_m one_sig := +Ltac pose_one_sig wt m base sz sz_nonzero base_pos one_sig := cache_vm_sig_with_type { one : Z^sz | Positional.Fdecode (m:=m) wt one = 1%F} - (one_sig' m sz sz_nonzero sz_le_log2_m) + (one_sig' m base sz sz_nonzero base_pos) one_sig. Ltac pose_a24_sig sz m wt a24 a24_sig := @@ -351,49 +354,49 @@ Ltac pose_a24_sig sz m wt a24 a24_sig := solve_constant_sig a24_sig. -Ltac pose_add_sig sz m wt sz_nonzero add_sig := +Ltac pose_add_sig wt m base sz add_sig := cache_sig_with_type_by_existing_sig { add : (Z^sz -> Z^sz -> Z^sz)%type | forall a b : Z^sz, let eval := Positional.Fdecode (m:=m) wt in eval (add a b) = (eval a + eval b)%F } - (add_sig' m sz sz_nonzero) + (add_sig' m base sz) add_sig. -Ltac pose_sub_sig sz m wt coef sub_sig := +Ltac pose_sub_sig wt m base sz coef sub_sig := cache_sig_with_type_by_existing_sig {sub : (Z^sz -> Z^sz -> Z^sz)%type | forall a b : Z^sz, let eval := Positional.Fdecode (m:=m) wt in eval (sub a b) = (eval a - eval b)%F} - (sub_sig' m sz coef) + (sub_sig' m base sz coef) sub_sig. -Ltac pose_opp_sig sz m wt coef opp_sig := +Ltac pose_opp_sig wt m base sz coef opp_sig := cache_sig_with_type_by_existing_sig {opp : (Z^sz -> Z^sz)%type | forall a : Z^sz, let eval := Positional.Fdecode (m := m) wt in eval (opp a) = F.opp (eval a)} - (opp_sig' m sz coef) + (opp_sig' m base sz coef) opp_sig. -Ltac pose_mul_sig sz m wt s c mul_code sz_nonzero s_nonzero mul_code_correct mul_sig := +Ltac pose_mul_sig wt m base sz s c mul_code sz_nonzero s_nonzero base_pos mul_code_correct mul_sig := cache_sig_with_type_by_existing_sig {mul : (Z^sz -> Z^sz -> Z^sz)%type | forall a b : Z^sz, let eval := Positional.Fdecode (m := m) wt in eval (mul a b) = (eval a * eval b)%F} - (mul_sig' m sz s c mul_code sz_nonzero s_nonzero mul_code_correct) + (mul_sig' m base sz s c mul_code sz_nonzero s_nonzero base_pos mul_code_correct) mul_sig. -Ltac pose_square_sig sz m wt s c square_code sz_nonzero s_nonzero square_code_correct square_sig := +Ltac pose_square_sig wt m base sz s c square_code sz_nonzero s_nonzero base_pos square_code_correct square_sig := cache_sig_with_type_by_existing_sig {square : (Z^sz -> Z^sz)%type | forall a : Z^sz, let eval := Positional.Fdecode (m := m) wt in eval (square a) = (eval a * eval a)%F} - (square_sig' m sz s c square_code sz_nonzero s_nonzero square_code_correct) + (square_sig' m base sz s c square_code sz_nonzero s_nonzero base_pos square_code_correct) square_sig. Ltac pose_ring sz m wt wt_divides' sz_nonzero wt_nonzero zero_sig one_sig opp_sig add_sig sub_sig mul_sig ring := diff --git a/src/Specific/Framework/ArithmeticSynthesis/DefaultsPackage.v b/src/Specific/Framework/ArithmeticSynthesis/DefaultsPackage.v index 4a037f34a..10d6e42ed 100644 --- a/src/Specific/Framework/ArithmeticSynthesis/DefaultsPackage.v +++ b/src/Specific/Framework/ArithmeticSynthesis/DefaultsPackage.v @@ -39,38 +39,41 @@ Ltac add_carry_sig pkg := Tag.update_by_tac_if_not_exists pkg TAG.carry_sig - ltac:(fun _ => let sz := Tag.get pkg TAG.sz in + ltac:(fun _ => let wt := Tag.get pkg TAG.wt in let m := Tag.get pkg TAG.m in - let wt := Tag.get pkg TAG.wt in + let base := Tag.get pkg TAG.base in + let sz := Tag.get pkg TAG.sz in let s := Tag.get pkg TAG.s in let c := Tag.get pkg TAG.c in let carry_chains := Tag.get pkg TAG.carry_chains in let carry_sig := fresh "carry_sig" in - let carry_sig := pose_carry_sig sz m wt s c carry_chains carry_sig in + let carry_sig := pose_carry_sig wt m base sz s c carry_chains carry_sig in constr:(carry_sig)). Ltac add_zero_sig pkg := Tag.update_by_tac_if_not_exists pkg TAG.zero_sig - ltac:(fun _ => let sz := Tag.get pkg TAG.sz in + ltac:(fun _ => let wt := Tag.get pkg TAG.wt in let m := Tag.get pkg TAG.m in - let wt := Tag.get pkg TAG.wt in + let base := Tag.get pkg TAG.base in + let sz := Tag.get pkg TAG.sz in let sz_nonzero := Tag.get pkg TAG.sz_nonzero in - let sz_le_log2_m := Tag.get pkg TAG.sz_le_log2_m in + let base_pos := Tag.get pkg TAG.base_pos in let zero_sig := fresh "zero_sig" in - let zero_sig := pose_zero_sig sz m wt sz_nonzero sz_le_log2_m zero_sig in + let zero_sig := pose_zero_sig wt m base sz sz_nonzero base_pos zero_sig in constr:(zero_sig)). Ltac add_one_sig pkg := Tag.update_by_tac_if_not_exists pkg TAG.one_sig - ltac:(fun _ => let sz := Tag.get pkg TAG.sz in + ltac:(fun _ => let wt := Tag.get pkg TAG.wt in let m := Tag.get pkg TAG.m in - let wt := Tag.get pkg TAG.wt in + let base := Tag.get pkg TAG.base in + let sz := Tag.get pkg TAG.sz in let sz_nonzero := Tag.get pkg TAG.sz_nonzero in - let sz_le_log2_m := Tag.get pkg TAG.sz_le_log2_m in + let base_pos := Tag.get pkg TAG.base_pos in let one_sig := fresh "one_sig" in - let one_sig := pose_one_sig sz m wt sz_nonzero sz_le_log2_m one_sig in + let one_sig := pose_one_sig wt m base sz sz_nonzero base_pos one_sig in constr:(one_sig)). Ltac add_a24_sig pkg := Tag.update_by_tac_if_not_exists @@ -87,66 +90,72 @@ Ltac add_add_sig pkg := Tag.update_by_tac_if_not_exists pkg TAG.add_sig - ltac:(fun _ => let sz := Tag.get pkg TAG.sz in + ltac:(fun _ => let wt := Tag.get pkg TAG.wt in let m := Tag.get pkg TAG.m in - let wt := Tag.get pkg TAG.wt in - let sz_nonzero := Tag.get pkg TAG.sz_nonzero in + let base := Tag.get pkg TAG.base in + let sz := Tag.get pkg TAG.sz in let add_sig := fresh "add_sig" in - let add_sig := pose_add_sig sz m wt sz_nonzero add_sig in + let add_sig := pose_add_sig wt m base sz add_sig in constr:(add_sig)). Ltac add_sub_sig pkg := Tag.update_by_tac_if_not_exists pkg TAG.sub_sig - ltac:(fun _ => let sz := Tag.get pkg TAG.sz in + ltac:(fun _ => let wt := Tag.get pkg TAG.wt in let m := Tag.get pkg TAG.m in - let wt := Tag.get pkg TAG.wt in + let base := Tag.get pkg TAG.base in + let sz := Tag.get pkg TAG.sz in let coef := Tag.get pkg TAG.coef in let sub_sig := fresh "sub_sig" in - let sub_sig := pose_sub_sig sz m wt coef sub_sig in + let sub_sig := pose_sub_sig wt m base sz coef sub_sig in constr:(sub_sig)). Ltac add_opp_sig pkg := Tag.update_by_tac_if_not_exists pkg TAG.opp_sig - ltac:(fun _ => let sz := Tag.get pkg TAG.sz in + ltac:(fun _ => let wt := Tag.get pkg TAG.wt in let m := Tag.get pkg TAG.m in - let wt := Tag.get pkg TAG.wt in + let base := Tag.get pkg TAG.base in + let sz := Tag.get pkg TAG.sz in let coef := Tag.get pkg TAG.coef in let opp_sig := fresh "opp_sig" in - let opp_sig := pose_opp_sig sz m wt coef opp_sig in + let opp_sig := pose_opp_sig wt m base sz coef opp_sig in constr:(opp_sig)). Ltac add_mul_sig pkg := Tag.update_by_tac_if_not_exists pkg TAG.mul_sig - ltac:(fun _ => let sz := Tag.get pkg TAG.sz in + ltac:(fun _ => let wt := Tag.get pkg TAG.wt in let m := Tag.get pkg TAG.m in - let wt := Tag.get pkg TAG.wt in + let base := Tag.get pkg TAG.base in + let sz := Tag.get pkg TAG.sz in let s := Tag.get pkg TAG.s in let c := Tag.get pkg TAG.c in let mul_code := Tag.get pkg TAG.mul_code in let sz_nonzero := Tag.get pkg TAG.sz_nonzero in let s_nonzero := Tag.get pkg TAG.s_nonzero in + let base_pos := Tag.get pkg TAG.base_pos in let mul_code_correct := Tag.get pkg TAG.mul_code_correct in let mul_sig := fresh "mul_sig" in - let mul_sig := pose_mul_sig sz m wt s c mul_code sz_nonzero s_nonzero mul_code_correct mul_sig in + let mul_sig := pose_mul_sig wt m base sz s c mul_code sz_nonzero s_nonzero base_pos mul_code_correct mul_sig in constr:(mul_sig)). Ltac add_square_sig pkg := Tag.update_by_tac_if_not_exists pkg TAG.square_sig - ltac:(fun _ => let sz := Tag.get pkg TAG.sz in + ltac:(fun _ => let wt := Tag.get pkg TAG.wt in let m := Tag.get pkg TAG.m in - let wt := Tag.get pkg TAG.wt in + let base := Tag.get pkg TAG.base in + let sz := Tag.get pkg TAG.sz in let s := Tag.get pkg TAG.s in let c := Tag.get pkg TAG.c in let square_code := Tag.get pkg TAG.square_code in let sz_nonzero := Tag.get pkg TAG.sz_nonzero in let s_nonzero := Tag.get pkg TAG.s_nonzero in + let base_pos := Tag.get pkg TAG.base_pos in let square_code_correct := Tag.get pkg TAG.square_code_correct in let square_sig := fresh "square_sig" in - let square_sig := pose_square_sig sz m wt s c square_code sz_nonzero s_nonzero square_code_correct square_sig in + let square_sig := pose_square_sig wt m base sz s c square_code sz_nonzero s_nonzero base_pos square_code_correct square_sig in constr:(square_sig)). Ltac add_ring pkg := Tag.update_by_tac_if_not_exists diff --git a/src/Specific/Framework/ArithmeticSynthesis/Freeze.v b/src/Specific/Framework/ArithmeticSynthesis/Freeze.v index a32f9e220..44d284d8e 100644 --- a/src/Specific/Framework/ArithmeticSynthesis/Freeze.v +++ b/src/Specific/Framework/ArithmeticSynthesis/Freeze.v @@ -1,4 +1,5 @@ Require Import Coq.ZArith.ZArith Coq.ZArith.BinIntDef. +Require Import Coq.QArith.QArith_base. Require Import Coq.Lists.List. Import ListNotations. Require Import Crypto.Arithmetic.CoreUnfolder. Require Import Crypto.Arithmetic.Saturated.CoreUnfolder. @@ -26,17 +27,18 @@ Ltac freeze_preunfold := Section gen. Context (m : positive) + (base : Q) (sz : nat) (c : list limb) (bitwidth : Z) (m_enc : Z^sz) - (sz_nonzero : sz <> 0%nat) - (sz_le_log2_m : Z.of_nat sz <= Z.log2_up (Z.pos m)). + (base_pos : (1 <= base)%Q) + (sz_nonzero : sz <> 0%nat). - Local Notation wt := (wt_gen m sz). + Local Notation wt := (wt_gen base). Local Notation sz2 := (sz2' sz). - Local Notation wt_divides' := (wt_gen_divides' m sz sz_nonzero sz_le_log2_m). - Local Notation wt_nonzero := (wt_gen_nonzero m sz). + Local Notation wt_divides' := (wt_gen_divides' base base_pos). + Local Notation wt_nonzero := (wt_gen_nonzero base base_pos). Context (c_small : 0 < Associational.eval c < wt sz) (m_enc_bounded : Tuple.map (BinInt.Z.land (Z.ones bitwidth)) m_enc = m_enc) @@ -51,12 +53,11 @@ Section gen. eval (freeze a) = eval a }. Proof. eexists; cbv beta zeta; (intros a ?). - pose proof wt_nonzero; pose proof (wt_gen_pos m sz). - pose proof (wt_gen0_1 m sz). - pose proof div_mod; pose proof (wt_gen_divides m sz sz_nonzero sz_le_log2_m). - pose proof (wt_gen_multiples m sz). + pose proof wt_nonzero; pose proof (wt_gen_pos base base_pos). + pose proof (wt_gen0_1 base). + pose proof div_mod; pose proof (wt_gen_divides base base_pos). + pose proof (wt_gen_multiples base base_pos). pose proof div_correct; pose proof modulo_correct. - pose proof (wt_gen_divides_chain m sz sz_nonzero sz_le_log2_m). let x := constr:(freeze (n:=sz) wt (Z.ones bitwidth) m_enc a) in presolve_op_F constr:(wt) x; [ autorewrite with pattern_runtime; reflexivity | ]. @@ -65,7 +66,7 @@ Section gen. Defined. End gen. -Ltac pose_freeze_sig wt m sz c bitwidth m_enc sz_nonzero sz_le_log2_m freeze_sig := +Ltac pose_freeze_sig wt m base sz c bitwidth m_enc base_pos sz_nonzero freeze_sig := cache_sig_with_type_by_existing_sig_helper ltac:(fun _ => cbv [freeze_sig']) {freeze : (Z^sz -> Z^sz)%type | @@ -73,5 +74,5 @@ Ltac pose_freeze_sig wt m sz c bitwidth m_enc sz_nonzero sz_le_log2_m freeze_sig (0 <= Positional.eval wt a < 2 * Z.pos m)-> let eval := Positional.Fdecode (m := m) wt in eval (freeze a) = eval a} - (freeze_sig' m sz c bitwidth m_enc sz_nonzero sz_le_log2_m) + (freeze_sig' m base sz c bitwidth m_enc base_pos sz_nonzero) freeze_sig. diff --git a/src/Specific/Framework/ArithmeticSynthesis/FreezePackage.v b/src/Specific/Framework/ArithmeticSynthesis/FreezePackage.v index 885bfde09..1a4b405b6 100644 --- a/src/Specific/Framework/ArithmeticSynthesis/FreezePackage.v +++ b/src/Specific/Framework/ArithmeticSynthesis/FreezePackage.v @@ -15,14 +15,15 @@ Ltac add_freeze_sig pkg := TAG.freeze_sig ltac:(fun _ => let wt := Tag.get pkg TAG.wt in let m := Tag.get pkg TAG.m in + let base := Tag.get pkg TAG.base in let sz := Tag.get pkg TAG.sz in let c := Tag.get pkg TAG.c in let bitwidth := Tag.get pkg TAG.bitwidth in let m_enc := Tag.get pkg TAG.m_enc in + let base_pos := Tag.get pkg TAG.base_pos in let sz_nonzero := Tag.get pkg TAG.sz_nonzero in - let sz_le_log2_m := Tag.get pkg TAG.sz_le_log2_m in let freeze_sig := fresh "freeze_sig" in - let freeze_sig := pose_freeze_sig wt m sz c bitwidth m_enc sz_nonzero sz_le_log2_m freeze_sig in + let freeze_sig := pose_freeze_sig wt m base sz c bitwidth m_enc base_pos sz_nonzero freeze_sig in constr:(freeze_sig)). Ltac add_Freeze_package pkg := let pkg := add_freeze_sig pkg in diff --git a/src/Specific/Framework/CurveParameters.v b/src/Specific/Framework/CurveParameters.v index 8911dccfc..f8d245a67 100644 --- a/src/Specific/Framework/CurveParameters.v +++ b/src/Specific/Framework/CurveParameters.v @@ -11,7 +11,7 @@ Local Set Primitive Projections. Module Export Notations := RawCurveParameters.Notations. Module TAG. (* namespacing *) - Inductive tags := CP | sz | bitwidth | s | c | carry_chains | a24 | coef_div_modulus | goldilocks | montgomery | upper_bound_of_exponent | allowable_bit_widths | freeze_allowable_bit_widths | modinv_fuel | mul_code | square_code. + Inductive tags := CP | sz | base | bitwidth | s | c | carry_chains | a24 | coef_div_modulus | goldilocks | montgomery | upper_bound_of_exponent | allowable_bit_widths | freeze_allowable_bit_widths | modinv_fuel | mul_code | square_code. End TAG. Module Export CurveParameters. @@ -32,6 +32,7 @@ Module Export CurveParameters. Record CurveParameters := { sz : nat; + base : Q; bitwidth : Z; s : Z; c : list limb; @@ -52,6 +53,7 @@ Module Export CurveParameters. Declare Reduction cbv_CurveParameters := cbv [sz + base bitwidth s c @@ -90,6 +92,7 @@ Module Export CurveParameters. : CurveParameters := Eval cbv_RawCurveParameters in let sz := RawCurveParameters.sz CP in + let base := RawCurveParameters.base CP in let bitwidth := RawCurveParameters.bitwidth CP in let montgomery := RawCurveParameters.montgomery CP in let s := RawCurveParameters.s CP in @@ -109,6 +112,7 @@ Module Export CurveParameters. {| sz := sz; + base := base; bitwidth := bitwidth; s := s; c := c; @@ -146,6 +150,7 @@ Module Export CurveParameters. lazymatch v with | ({| sz := ?sz'; + base := ?base'; bitwidth := ?bitwidth'; s := ?s'; c := ?c'; @@ -162,6 +167,7 @@ Module Export CurveParameters. modinv_fuel := ?modinv_fuel' |}) => let sz' := do_compute sz' in + let base' := do_compute base' in let bitwidth' := do_compute bitwidth' in let carry_chains' := do_compute carry_chains' in let goldilocks' := do_compute goldilocks' in @@ -171,6 +177,7 @@ Module Export CurveParameters. let modinv_fuel' := do_compute modinv_fuel' in constr:({| sz := sz'; + base := base'; bitwidth := bitwidth'; s := s'; c := c'; @@ -194,6 +201,8 @@ Module Export CurveParameters. Ltac internal_pose_of_CP CP proj id := let P_proj := (eval cbv_CurveParameters in (proj CP)) in cache_term P_proj id. + Ltac pose_base CP base := + internal_pose_of_CP CP CurveParameters.base base. Ltac pose_sz CP sz := internal_pose_of_CP CP CurveParameters.sz sz. Ltac pose_bitwidth CP bitwidth := @@ -226,6 +235,12 @@ Module Export CurveParameters. internal_pose_of_CP CP CurveParameters.square_code square_code. (* Everything below this line autogenerated by remake_packages.py *) + Ltac add_base pkg := + let CP := Tag.get pkg TAG.CP in + let base := fresh "base" in + let base := pose_base CP base in + Tag.update pkg TAG.base base. + Ltac add_sz pkg := let CP := Tag.get pkg TAG.CP in let sz := fresh "sz" in @@ -317,6 +332,7 @@ Module Export CurveParameters. Tag.update pkg TAG.square_code square_code. Ltac add_CurveParameters_package pkg := + let pkg := add_base pkg in let pkg := add_sz pkg in let pkg := add_bitwidth pkg in let pkg := add_s pkg in diff --git a/src/Specific/Framework/CurveParametersPackage.v b/src/Specific/Framework/CurveParametersPackage.v index 75ef1f7e7..458c1d4ea 100644 --- a/src/Specific/Framework/CurveParametersPackage.v +++ b/src/Specific/Framework/CurveParametersPackage.v @@ -23,6 +23,8 @@ Ltac if_montgomery pkg tac_true tac_false arg := Module MakeCurveParametersPackage (PKG : PrePackage). Module Import MakeCurveParametersPackageInternal := MakePackageBase PKG. + Ltac get_base _ := get TAG.base. + Notation base := (ltac:(let v := get_base () in exact v)) (only parsing). Ltac get_sz _ := get TAG.sz. Notation sz := (ltac:(let v := get_sz () in exact v)) (only parsing). Ltac get_bitwidth _ := get TAG.bitwidth. diff --git a/src/Specific/Framework/RawCurveParameters.v b/src/Specific/Framework/RawCurveParameters.v index 8adff1f69..b84089eaf 100644 --- a/src/Specific/Framework/RawCurveParameters.v +++ b/src/Specific/Framework/RawCurveParameters.v @@ -1,9 +1,12 @@ +Require Export Coq.QArith.QArith_base. Require Export Coq.ZArith.BinInt. Require Export Coq.Lists.List. Require Export Crypto.Util.ZUtil.Notations. Require Crypto.Util.Tuple. Local Set Primitive Projections. +Coercion QArith_base.inject_Z : Z >-> Q. +Coercion Z.of_nat : nat >-> Z. Module Export Notations. (* import/export tracking *) Export ListNotations. @@ -18,6 +21,7 @@ End Notations. Record CurveParameters := { sz : nat; + base : Q; bitwidth : Z; s : Z; c : list limb; @@ -42,6 +46,7 @@ Record CurveParameters := Declare Reduction cbv_RawCurveParameters := cbv [sz + base bitwidth s c diff --git a/src/Specific/Framework/make_curve.py b/src/Specific/Framework/make_curve.py index 70b88069d..516b67868 100755 --- a/src/Specific/Framework/make_curve.py +++ b/src/Specific/Framework/make_curve.py @@ -1,6 +1,7 @@ #!/usr/bin/env python from __future__ import with_statement import json, sys, os, math, re, shutil, io +from fractions import Fraction def compute_bitwidth(base): return 2**int(math.ceil(math.log(base, 2))) @@ -11,6 +12,10 @@ def default_carry_chains(sz): def compute_s(modulus_str): base, exp, rest = re.match(r'\s*'.join(('^', '(2)', r'\^', '([0-9]+)', r'([0-9\^ +\*-]*)$')), modulus_str).groups() return '%s^%s' % (base, exp) +def reformat_base(base): + if '.' not in base: return base + int_part, frac_part = base.split('.') + return int_part + ' + ' + str(Fraction('.' + frac_part)) def compute_c(modulus_str): base, exp, rest = re.match(r'\s*'.join(('^', '(2)', r'\^', '([0-9]+)', r'([0-9\^ +\*-]*)$')), modulus_str).groups() if rest.strip() == '': return [] @@ -193,6 +198,7 @@ def make_curve_parameters(parameters): assert(all(ch in '0123456789^+- ' for ch in parameters['modulus'])) modulus = eval(parameters['modulus'].replace('^', '**')) base = float(parameters['base']) + replacements['reformatted_base'] = reformat_base(parameters['base']) replacements['bitwidth'] = parameters.get('bitwidth', str(compute_bitwidth(base))) bitwidth = int(replacements['bitwidth']) replacements['sz'] = parameters.get('sz', str(compute_sz(modulus, base))) @@ -242,6 +248,7 @@ Base: %(base)s Definition curve : CurveParameters := {| sz := %(sz)s%%nat; + base := %(reformatted_base)s; bitwidth := %(bitwidth)s; s := %(s)s; c := %(c)s; diff --git a/src/Specific/NISTP256/AMD128/CurveParameters.v b/src/Specific/NISTP256/AMD128/CurveParameters.v index 56d452941..09716c9f9 100644 --- a/src/Specific/NISTP256/AMD128/CurveParameters.v +++ b/src/Specific/NISTP256/AMD128/CurveParameters.v @@ -9,6 +9,7 @@ Base: 128 Definition curve : CurveParameters := {| sz := 2%nat; + base := 128; bitwidth := 128; s := 2^256; c := [(1, 1); (2^96, -1); (2^192, -1); (2^224, 1)]; diff --git a/src/Specific/NISTP256/AMD64/CurveParameters.v b/src/Specific/NISTP256/AMD64/CurveParameters.v index e90ffe113..f51ae2d4a 100644 --- a/src/Specific/NISTP256/AMD64/CurveParameters.v +++ b/src/Specific/NISTP256/AMD64/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 4%nat; + base := 64; bitwidth := 64; s := 2^256; c := [(1, 1); (2^96, -1); (2^192, -1); (2^224, 1)]; diff --git a/src/Specific/X2448/Karatsuba/C64/CurveParameters.v b/src/Specific/X2448/Karatsuba/C64/CurveParameters.v index 7302294b8..3ba857263 100644 --- a/src/Specific/X2448/Karatsuba/C64/CurveParameters.v +++ b/src/Specific/X2448/Karatsuba/C64/CurveParameters.v @@ -9,6 +9,7 @@ Base: 56 Definition curve : CurveParameters := {| sz := 8%nat; + base := 56; bitwidth := 64; s := 2^448; c := [(1, 1); (2^224, 1)]; diff --git a/src/Specific/X25519/C32/CurveParameters.v b/src/Specific/X25519/C32/CurveParameters.v index f112bc2ac..b921edf2c 100644 --- a/src/Specific/X25519/C32/CurveParameters.v +++ b/src/Specific/X25519/C32/CurveParameters.v @@ -9,6 +9,7 @@ Base: 25.5 Definition curve : CurveParameters := {| sz := 10%nat; + base := 25 + 1/2; bitwidth := 32; s := 2^255; c := [(1, 19)]; diff --git a/src/Specific/X25519/C64/CurveParameters.v b/src/Specific/X25519/C64/CurveParameters.v index 0a727968f..1bcc5a633 100644 --- a/src/Specific/X25519/C64/CurveParameters.v +++ b/src/Specific/X25519/C64/CurveParameters.v @@ -9,6 +9,7 @@ Base: 51 Definition curve : CurveParameters := {| sz := 5%nat; + base := 51; bitwidth := 64; s := 2^255; c := [(1, 19)]; diff --git a/src/Specific/X2555/C128/CurveParameters.v b/src/Specific/X2555/C128/CurveParameters.v index f3ae4511b..6b00917ce 100644 --- a/src/Specific/X2555/C128/CurveParameters.v +++ b/src/Specific/X2555/C128/CurveParameters.v @@ -9,6 +9,7 @@ Base: 130 Definition curve : CurveParameters := {| sz := 3%nat; + base := 130; bitwidth := 128; s := 2^255; c := [(1, 5)]; diff --git a/src/Specific/montgomery32_2e127m1/CurveParameters.v b/src/Specific/montgomery32_2e127m1/CurveParameters.v index 7271e7450..6136ed227 100644 --- a/src/Specific/montgomery32_2e127m1/CurveParameters.v +++ b/src/Specific/montgomery32_2e127m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 3%nat; + base := 32; bitwidth := 32; s := 2^127; c := [(1, 1)]; diff --git a/src/Specific/montgomery32_2e129m25/CurveParameters.v b/src/Specific/montgomery32_2e129m25/CurveParameters.v index f2b9c9a3a..e0264fe37 100644 --- a/src/Specific/montgomery32_2e129m25/CurveParameters.v +++ b/src/Specific/montgomery32_2e129m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 4%nat; + base := 32; bitwidth := 32; s := 2^129; c := [(1, 25)]; diff --git a/src/Specific/montgomery32_2e130m5/CurveParameters.v b/src/Specific/montgomery32_2e130m5/CurveParameters.v index ed897050d..ceb6b7a5f 100644 --- a/src/Specific/montgomery32_2e130m5/CurveParameters.v +++ b/src/Specific/montgomery32_2e130m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 4%nat; + base := 32; bitwidth := 32; s := 2^130; c := [(1, 5)]; diff --git a/src/Specific/montgomery32_2e137m13/CurveParameters.v b/src/Specific/montgomery32_2e137m13/CurveParameters.v index c62b2000a..31d502cba 100644 --- a/src/Specific/montgomery32_2e137m13/CurveParameters.v +++ b/src/Specific/montgomery32_2e137m13/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 4%nat; + base := 32; bitwidth := 32; s := 2^137; c := [(1, 13)]; diff --git a/src/Specific/montgomery32_2e140m27/CurveParameters.v b/src/Specific/montgomery32_2e140m27/CurveParameters.v index 1d68c4a9d..8d7400d1d 100644 --- a/src/Specific/montgomery32_2e140m27/CurveParameters.v +++ b/src/Specific/montgomery32_2e140m27/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 4%nat; + base := 32; bitwidth := 32; s := 2^140; c := [(1, 27)]; diff --git a/src/Specific/montgomery32_2e141m9/CurveParameters.v b/src/Specific/montgomery32_2e141m9/CurveParameters.v index fc7caae4a..7aba5803b 100644 --- a/src/Specific/montgomery32_2e141m9/CurveParameters.v +++ b/src/Specific/montgomery32_2e141m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 4%nat; + base := 32; bitwidth := 32; s := 2^141; c := [(1, 9)]; diff --git a/src/Specific/montgomery32_2e150m3/CurveParameters.v b/src/Specific/montgomery32_2e150m3/CurveParameters.v index 451ede6b0..df1bd424f 100644 --- a/src/Specific/montgomery32_2e150m3/CurveParameters.v +++ b/src/Specific/montgomery32_2e150m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 4%nat; + base := 32; bitwidth := 32; s := 2^150; c := [(1, 3)]; diff --git a/src/Specific/montgomery32_2e150m5/CurveParameters.v b/src/Specific/montgomery32_2e150m5/CurveParameters.v index 769ffc313..12c8f87a4 100644 --- a/src/Specific/montgomery32_2e150m5/CurveParameters.v +++ b/src/Specific/montgomery32_2e150m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 4%nat; + base := 32; bitwidth := 32; s := 2^150; c := [(1, 5)]; diff --git a/src/Specific/montgomery32_2e152m17/CurveParameters.v b/src/Specific/montgomery32_2e152m17/CurveParameters.v index 181ebf561..a0c5cf694 100644 --- a/src/Specific/montgomery32_2e152m17/CurveParameters.v +++ b/src/Specific/montgomery32_2e152m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 4%nat; + base := 32; bitwidth := 32; s := 2^152; c := [(1, 17)]; diff --git a/src/Specific/montgomery32_2e158m15/CurveParameters.v b/src/Specific/montgomery32_2e158m15/CurveParameters.v index fdae2b541..0f5113951 100644 --- a/src/Specific/montgomery32_2e158m15/CurveParameters.v +++ b/src/Specific/montgomery32_2e158m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 4%nat; + base := 32; bitwidth := 32; s := 2^158; c := [(1, 15)]; diff --git a/src/Specific/montgomery32_2e165m25/CurveParameters.v b/src/Specific/montgomery32_2e165m25/CurveParameters.v index bee8e76a5..7025f5e42 100644 --- a/src/Specific/montgomery32_2e165m25/CurveParameters.v +++ b/src/Specific/montgomery32_2e165m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 5%nat; + base := 32; bitwidth := 32; s := 2^165; c := [(1, 25)]; diff --git a/src/Specific/montgomery32_2e166m5/CurveParameters.v b/src/Specific/montgomery32_2e166m5/CurveParameters.v index 8b47d73a3..0b3c6a6cd 100644 --- a/src/Specific/montgomery32_2e166m5/CurveParameters.v +++ b/src/Specific/montgomery32_2e166m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 5%nat; + base := 32; bitwidth := 32; s := 2^166; c := [(1, 5)]; diff --git a/src/Specific/montgomery32_2e171m19/CurveParameters.v b/src/Specific/montgomery32_2e171m19/CurveParameters.v index cb63b57ec..c36112bef 100644 --- a/src/Specific/montgomery32_2e171m19/CurveParameters.v +++ b/src/Specific/montgomery32_2e171m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 5%nat; + base := 32; bitwidth := 32; s := 2^171; c := [(1, 19)]; diff --git a/src/Specific/montgomery32_2e174m17/CurveParameters.v b/src/Specific/montgomery32_2e174m17/CurveParameters.v index 8f3460538..4d5c2d9f7 100644 --- a/src/Specific/montgomery32_2e174m17/CurveParameters.v +++ b/src/Specific/montgomery32_2e174m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 5%nat; + base := 32; bitwidth := 32; s := 2^174; c := [(1, 17)]; diff --git a/src/Specific/montgomery32_2e174m3/CurveParameters.v b/src/Specific/montgomery32_2e174m3/CurveParameters.v index 9a29393f4..086388838 100644 --- a/src/Specific/montgomery32_2e174m3/CurveParameters.v +++ b/src/Specific/montgomery32_2e174m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 5%nat; + base := 32; bitwidth := 32; s := 2^174; c := [(1, 3)]; diff --git a/src/Specific/montgomery32_2e189m25/CurveParameters.v b/src/Specific/montgomery32_2e189m25/CurveParameters.v index 6c6ebcbbe..c8989d6b3 100644 --- a/src/Specific/montgomery32_2e189m25/CurveParameters.v +++ b/src/Specific/montgomery32_2e189m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 5%nat; + base := 32; bitwidth := 32; s := 2^189; c := [(1, 25)]; diff --git a/src/Specific/montgomery32_2e190m11/CurveParameters.v b/src/Specific/montgomery32_2e190m11/CurveParameters.v index 1ef83cdcf..f93d3067a 100644 --- a/src/Specific/montgomery32_2e190m11/CurveParameters.v +++ b/src/Specific/montgomery32_2e190m11/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 5%nat; + base := 32; bitwidth := 32; s := 2^190; c := [(1, 11)]; diff --git a/src/Specific/montgomery32_2e191m19/CurveParameters.v b/src/Specific/montgomery32_2e191m19/CurveParameters.v index ff8992522..9e8e487fe 100644 --- a/src/Specific/montgomery32_2e191m19/CurveParameters.v +++ b/src/Specific/montgomery32_2e191m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 5%nat; + base := 32; bitwidth := 32; s := 2^191; c := [(1, 19)]; diff --git a/src/Specific/montgomery32_2e192m2e64m1/CurveParameters.v b/src/Specific/montgomery32_2e192m2e64m1/CurveParameters.v index 5d6da4b0d..cc1bba8d2 100644 --- a/src/Specific/montgomery32_2e192m2e64m1/CurveParameters.v +++ b/src/Specific/montgomery32_2e192m2e64m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 6%nat; + base := 32; bitwidth := 32; s := 2^192; c := [(1, 1); (2^64, 1)]; diff --git a/src/Specific/montgomery32_2e194m33/CurveParameters.v b/src/Specific/montgomery32_2e194m33/CurveParameters.v index 6a108e7ef..2a035de9f 100644 --- a/src/Specific/montgomery32_2e194m33/CurveParameters.v +++ b/src/Specific/montgomery32_2e194m33/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 6%nat; + base := 32; bitwidth := 32; s := 2^194; c := [(1, 33)]; diff --git a/src/Specific/montgomery32_2e196m15/CurveParameters.v b/src/Specific/montgomery32_2e196m15/CurveParameters.v index 60ec23119..cbd4fa1ca 100644 --- a/src/Specific/montgomery32_2e196m15/CurveParameters.v +++ b/src/Specific/montgomery32_2e196m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 6%nat; + base := 32; bitwidth := 32; s := 2^196; c := [(1, 15)]; diff --git a/src/Specific/montgomery32_2e198m17/CurveParameters.v b/src/Specific/montgomery32_2e198m17/CurveParameters.v index 585f66369..6a25f2758 100644 --- a/src/Specific/montgomery32_2e198m17/CurveParameters.v +++ b/src/Specific/montgomery32_2e198m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 6%nat; + base := 32; bitwidth := 32; s := 2^198; c := [(1, 17)]; diff --git a/src/Specific/montgomery32_2e206m5/CurveParameters.v b/src/Specific/montgomery32_2e206m5/CurveParameters.v index 5cc00a290..088ed05e0 100644 --- a/src/Specific/montgomery32_2e206m5/CurveParameters.v +++ b/src/Specific/montgomery32_2e206m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 6%nat; + base := 32; bitwidth := 32; s := 2^206; c := [(1, 5)]; diff --git a/src/Specific/montgomery32_2e212m29/CurveParameters.v b/src/Specific/montgomery32_2e212m29/CurveParameters.v index 8e339a959..a6bca7a82 100644 --- a/src/Specific/montgomery32_2e212m29/CurveParameters.v +++ b/src/Specific/montgomery32_2e212m29/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 6%nat; + base := 32; bitwidth := 32; s := 2^212; c := [(1, 29)]; diff --git a/src/Specific/montgomery32_2e213m3/CurveParameters.v b/src/Specific/montgomery32_2e213m3/CurveParameters.v index 5523cd0df..a471ab852 100644 --- a/src/Specific/montgomery32_2e213m3/CurveParameters.v +++ b/src/Specific/montgomery32_2e213m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 6%nat; + base := 32; bitwidth := 32; s := 2^213; c := [(1, 3)]; diff --git a/src/Specific/montgomery32_2e216m2e108m1/CurveParameters.v b/src/Specific/montgomery32_2e216m2e108m1/CurveParameters.v index cd5b5032c..a695673e7 100644 --- a/src/Specific/montgomery32_2e216m2e108m1/CurveParameters.v +++ b/src/Specific/montgomery32_2e216m2e108m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 6%nat; + base := 32; bitwidth := 32; s := 2^216; c := [(1, 1); (2^108, 1)]; diff --git a/src/Specific/montgomery32_2e221m3/CurveParameters.v b/src/Specific/montgomery32_2e221m3/CurveParameters.v index d215fbf7b..6a77d7443 100644 --- a/src/Specific/montgomery32_2e221m3/CurveParameters.v +++ b/src/Specific/montgomery32_2e221m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 6%nat; + base := 32; bitwidth := 32; s := 2^221; c := [(1, 3)]; diff --git a/src/Specific/montgomery32_2e222m117/CurveParameters.v b/src/Specific/montgomery32_2e222m117/CurveParameters.v index 428082e5b..c0b8d466c 100644 --- a/src/Specific/montgomery32_2e222m117/CurveParameters.v +++ b/src/Specific/montgomery32_2e222m117/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 6%nat; + base := 32; bitwidth := 32; s := 2^222; c := [(1, 117)]; diff --git a/src/Specific/montgomery32_2e224m2e96p1/CurveParameters.v b/src/Specific/montgomery32_2e224m2e96p1/CurveParameters.v index 5c45f02a0..efb1444d7 100644 --- a/src/Specific/montgomery32_2e224m2e96p1/CurveParameters.v +++ b/src/Specific/montgomery32_2e224m2e96p1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 7%nat; + base := 32; bitwidth := 32; s := 2^224; c := [(1, -1); (2^96, 1)]; diff --git a/src/Specific/montgomery32_2e226m5/CurveParameters.v b/src/Specific/montgomery32_2e226m5/CurveParameters.v index ceabbead1..bd36e92f8 100644 --- a/src/Specific/montgomery32_2e226m5/CurveParameters.v +++ b/src/Specific/montgomery32_2e226m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 7%nat; + base := 32; bitwidth := 32; s := 2^226; c := [(1, 5)]; diff --git a/src/Specific/montgomery32_2e230m27/CurveParameters.v b/src/Specific/montgomery32_2e230m27/CurveParameters.v index a04d83038..8cd75df4e 100644 --- a/src/Specific/montgomery32_2e230m27/CurveParameters.v +++ b/src/Specific/montgomery32_2e230m27/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 7%nat; + base := 32; bitwidth := 32; s := 2^230; c := [(1, 27)]; diff --git a/src/Specific/montgomery32_2e235m15/CurveParameters.v b/src/Specific/montgomery32_2e235m15/CurveParameters.v index 2edc8e3d0..3fa85530e 100644 --- a/src/Specific/montgomery32_2e235m15/CurveParameters.v +++ b/src/Specific/montgomery32_2e235m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 7%nat; + base := 32; bitwidth := 32; s := 2^235; c := [(1, 15)]; diff --git a/src/Specific/montgomery32_2e243m9/CurveParameters.v b/src/Specific/montgomery32_2e243m9/CurveParameters.v index 5da1e367e..c51a03964 100644 --- a/src/Specific/montgomery32_2e243m9/CurveParameters.v +++ b/src/Specific/montgomery32_2e243m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 7%nat; + base := 32; bitwidth := 32; s := 2^243; c := [(1, 9)]; diff --git a/src/Specific/montgomery32_2e251m9/CurveParameters.v b/src/Specific/montgomery32_2e251m9/CurveParameters.v index 98df66c25..b566f38e9 100644 --- a/src/Specific/montgomery32_2e251m9/CurveParameters.v +++ b/src/Specific/montgomery32_2e251m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 7%nat; + base := 32; bitwidth := 32; s := 2^251; c := [(1, 9)]; diff --git a/src/Specific/montgomery32_2e255m19/CurveParameters.v b/src/Specific/montgomery32_2e255m19/CurveParameters.v index 3a1b97c23..0a3e03d08 100644 --- a/src/Specific/montgomery32_2e255m19/CurveParameters.v +++ b/src/Specific/montgomery32_2e255m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 7%nat; + base := 32; bitwidth := 32; s := 2^255; c := [(1, 19)]; diff --git a/src/Specific/montgomery32_2e255m2e4m2e1m1/CurveParameters.v b/src/Specific/montgomery32_2e255m2e4m2e1m1/CurveParameters.v index 94f04957c..60fbf139e 100644 --- a/src/Specific/montgomery32_2e255m2e4m2e1m1/CurveParameters.v +++ b/src/Specific/montgomery32_2e255m2e4m2e1m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 7%nat; + base := 32; bitwidth := 32; s := 2^255; c := [(1, 1); (2^1, 1); (2^4, 1)]; diff --git a/src/Specific/montgomery32_2e255m765/CurveParameters.v b/src/Specific/montgomery32_2e255m765/CurveParameters.v index f48cc3b27..3d0a72d1e 100644 --- a/src/Specific/montgomery32_2e255m765/CurveParameters.v +++ b/src/Specific/montgomery32_2e255m765/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 7%nat; + base := 32; bitwidth := 32; s := 2^255; c := [(1, 765)]; diff --git a/src/Specific/montgomery32_2e256m189/CurveParameters.v b/src/Specific/montgomery32_2e256m189/CurveParameters.v index 6b09dfc0a..efce7b2d0 100644 --- a/src/Specific/montgomery32_2e256m189/CurveParameters.v +++ b/src/Specific/montgomery32_2e256m189/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 8%nat; + base := 32; bitwidth := 32; s := 2^256; c := [(1, 189)]; diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1/CurveParameters.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1/CurveParameters.v index b4890ac5d..d5020f25f 100644 --- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1/CurveParameters.v +++ b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 8%nat; + base := 32; bitwidth := 32; s := 2^256; c := [(1, 1); (2^96, -1); (2^192, -1); (2^224, 1)]; diff --git a/src/Specific/montgomery32_2e256m2e32m977/CurveParameters.v b/src/Specific/montgomery32_2e256m2e32m977/CurveParameters.v index ab9b0aa47..6488a90b8 100644 --- a/src/Specific/montgomery32_2e256m2e32m977/CurveParameters.v +++ b/src/Specific/montgomery32_2e256m2e32m977/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 8%nat; + base := 32; bitwidth := 32; s := 2^256; c := [(1, 977); (2^32, 1)]; diff --git a/src/Specific/montgomery32_2e266m3/CurveParameters.v b/src/Specific/montgomery32_2e266m3/CurveParameters.v index 711290679..f44e38151 100644 --- a/src/Specific/montgomery32_2e266m3/CurveParameters.v +++ b/src/Specific/montgomery32_2e266m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 8%nat; + base := 32; bitwidth := 32; s := 2^266; c := [(1, 3)]; diff --git a/src/Specific/montgomery32_2e285m9/CurveParameters.v b/src/Specific/montgomery32_2e285m9/CurveParameters.v index 8cef52c40..1f89bdf96 100644 --- a/src/Specific/montgomery32_2e285m9/CurveParameters.v +++ b/src/Specific/montgomery32_2e285m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 8%nat; + base := 32; bitwidth := 32; s := 2^285; c := [(1, 9)]; diff --git a/src/Specific/montgomery32_2e291m19/CurveParameters.v b/src/Specific/montgomery32_2e291m19/CurveParameters.v index a1915ad1f..f26d12d8f 100644 --- a/src/Specific/montgomery32_2e291m19/CurveParameters.v +++ b/src/Specific/montgomery32_2e291m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 9%nat; + base := 32; bitwidth := 32; s := 2^291; c := [(1, 19)]; diff --git a/src/Specific/montgomery32_2e321m9/CurveParameters.v b/src/Specific/montgomery32_2e321m9/CurveParameters.v index ca875b403..67708c2ea 100644 --- a/src/Specific/montgomery32_2e321m9/CurveParameters.v +++ b/src/Specific/montgomery32_2e321m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 10%nat; + base := 32; bitwidth := 32; s := 2^321; c := [(1, 9)]; diff --git a/src/Specific/montgomery32_2e322m2e161m1/CurveParameters.v b/src/Specific/montgomery32_2e322m2e161m1/CurveParameters.v index de1c8a49d..85f5f62eb 100644 --- a/src/Specific/montgomery32_2e322m2e161m1/CurveParameters.v +++ b/src/Specific/montgomery32_2e322m2e161m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 10%nat; + base := 32; bitwidth := 32; s := 2^322; c := [(1, 1); (2^161, 1)]; diff --git a/src/Specific/montgomery32_2e336m17/CurveParameters.v b/src/Specific/montgomery32_2e336m17/CurveParameters.v index 7bfffe26a..18912be80 100644 --- a/src/Specific/montgomery32_2e336m17/CurveParameters.v +++ b/src/Specific/montgomery32_2e336m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 10%nat; + base := 32; bitwidth := 32; s := 2^336; c := [(1, 17)]; diff --git a/src/Specific/montgomery32_2e336m3/CurveParameters.v b/src/Specific/montgomery32_2e336m3/CurveParameters.v index 088bad85f..074daa69f 100644 --- a/src/Specific/montgomery32_2e336m3/CurveParameters.v +++ b/src/Specific/montgomery32_2e336m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 10%nat; + base := 32; bitwidth := 32; s := 2^336; c := [(1, 3)]; diff --git a/src/Specific/montgomery32_2e338m15/CurveParameters.v b/src/Specific/montgomery32_2e338m15/CurveParameters.v index bce7f19d1..e67a76c36 100644 --- a/src/Specific/montgomery32_2e338m15/CurveParameters.v +++ b/src/Specific/montgomery32_2e338m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 10%nat; + base := 32; bitwidth := 32; s := 2^338; c := [(1, 15)]; diff --git a/src/Specific/montgomery32_2e369m25/CurveParameters.v b/src/Specific/montgomery32_2e369m25/CurveParameters.v index 79800d48d..ee4541b67 100644 --- a/src/Specific/montgomery32_2e369m25/CurveParameters.v +++ b/src/Specific/montgomery32_2e369m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 11%nat; + base := 32; bitwidth := 32; s := 2^369; c := [(1, 25)]; diff --git a/src/Specific/montgomery32_2e379m19/CurveParameters.v b/src/Specific/montgomery32_2e379m19/CurveParameters.v index 9d34f2833..1a6df497b 100644 --- a/src/Specific/montgomery32_2e379m19/CurveParameters.v +++ b/src/Specific/montgomery32_2e379m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 11%nat; + base := 32; bitwidth := 32; s := 2^379; c := [(1, 19)]; diff --git a/src/Specific/montgomery32_2e382m105/CurveParameters.v b/src/Specific/montgomery32_2e382m105/CurveParameters.v index 5327d1bb5..909604998 100644 --- a/src/Specific/montgomery32_2e382m105/CurveParameters.v +++ b/src/Specific/montgomery32_2e382m105/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 11%nat; + base := 32; bitwidth := 32; s := 2^382; c := [(1, 105)]; diff --git a/src/Specific/montgomery32_2e383m187/CurveParameters.v b/src/Specific/montgomery32_2e383m187/CurveParameters.v index bfc4359ce..b72d17dd6 100644 --- a/src/Specific/montgomery32_2e383m187/CurveParameters.v +++ b/src/Specific/montgomery32_2e383m187/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 11%nat; + base := 32; bitwidth := 32; s := 2^383; c := [(1, 187)]; diff --git a/src/Specific/montgomery32_2e383m31/CurveParameters.v b/src/Specific/montgomery32_2e383m31/CurveParameters.v index ed045577e..aebd3d049 100644 --- a/src/Specific/montgomery32_2e383m31/CurveParameters.v +++ b/src/Specific/montgomery32_2e383m31/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 11%nat; + base := 32; bitwidth := 32; s := 2^383; c := [(1, 31)]; diff --git a/src/Specific/montgomery32_2e383m421/CurveParameters.v b/src/Specific/montgomery32_2e383m421/CurveParameters.v index 0de06aac7..f566ed3be 100644 --- a/src/Specific/montgomery32_2e383m421/CurveParameters.v +++ b/src/Specific/montgomery32_2e383m421/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 11%nat; + base := 32; bitwidth := 32; s := 2^383; c := [(1, 421)]; diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1/CurveParameters.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1/CurveParameters.v index c32d23e79..bdc2529a7 100644 --- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1/CurveParameters.v +++ b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 12%nat; + base := 32; bitwidth := 32; s := 2^384; c := [(1, 1); (2^32, -1); (2^96, 1); (2^128, 1)]; diff --git a/src/Specific/montgomery32_2e384m317/CurveParameters.v b/src/Specific/montgomery32_2e384m317/CurveParameters.v index d4acdd325..2779e0b42 100644 --- a/src/Specific/montgomery32_2e384m317/CurveParameters.v +++ b/src/Specific/montgomery32_2e384m317/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 12%nat; + base := 32; bitwidth := 32; s := 2^384; c := [(1, 317)]; diff --git a/src/Specific/montgomery32_2e389m21/CurveParameters.v b/src/Specific/montgomery32_2e389m21/CurveParameters.v index a88b76ebe..210aa7fba 100644 --- a/src/Specific/montgomery32_2e389m21/CurveParameters.v +++ b/src/Specific/montgomery32_2e389m21/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 12%nat; + base := 32; bitwidth := 32; s := 2^389; c := [(1, 21)]; diff --git a/src/Specific/montgomery32_2e401m31/CurveParameters.v b/src/Specific/montgomery32_2e401m31/CurveParameters.v index 5e093ad31..f4e7012c7 100644 --- a/src/Specific/montgomery32_2e401m31/CurveParameters.v +++ b/src/Specific/montgomery32_2e401m31/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 12%nat; + base := 32; bitwidth := 32; s := 2^401; c := [(1, 31)]; diff --git a/src/Specific/montgomery32_2e413m21/CurveParameters.v b/src/Specific/montgomery32_2e413m21/CurveParameters.v index 13fb130c8..532d6f952 100644 --- a/src/Specific/montgomery32_2e413m21/CurveParameters.v +++ b/src/Specific/montgomery32_2e413m21/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 12%nat; + base := 32; bitwidth := 32; s := 2^413; c := [(1, 21)]; diff --git a/src/Specific/montgomery32_2e414m17/CurveParameters.v b/src/Specific/montgomery32_2e414m17/CurveParameters.v index 4b26d0d91..a798c53fb 100644 --- a/src/Specific/montgomery32_2e414m17/CurveParameters.v +++ b/src/Specific/montgomery32_2e414m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 12%nat; + base := 32; bitwidth := 32; s := 2^414; c := [(1, 17)]; diff --git a/src/Specific/montgomery32_2e416m2e208m1/CurveParameters.v b/src/Specific/montgomery32_2e416m2e208m1/CurveParameters.v index d5b057244..f0984b4d4 100644 --- a/src/Specific/montgomery32_2e416m2e208m1/CurveParameters.v +++ b/src/Specific/montgomery32_2e416m2e208m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 13%nat; + base := 32; bitwidth := 32; s := 2^416; c := [(1, 1); (2^208, 1)]; diff --git a/src/Specific/montgomery32_2e444m17/CurveParameters.v b/src/Specific/montgomery32_2e444m17/CurveParameters.v index 95e6cc326..e30dc6ee2 100644 --- a/src/Specific/montgomery32_2e444m17/CurveParameters.v +++ b/src/Specific/montgomery32_2e444m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 13%nat; + base := 32; bitwidth := 32; s := 2^444; c := [(1, 17)]; diff --git a/src/Specific/montgomery32_2e448m2e224m1/CurveParameters.v b/src/Specific/montgomery32_2e448m2e224m1/CurveParameters.v index 879dbb487..ba1a6d6c4 100644 --- a/src/Specific/montgomery32_2e448m2e224m1/CurveParameters.v +++ b/src/Specific/montgomery32_2e448m2e224m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 14%nat; + base := 32; bitwidth := 32; s := 2^448; c := [(1, 1); (2^224, 1)]; diff --git a/src/Specific/montgomery32_2e450m2e225m1/CurveParameters.v b/src/Specific/montgomery32_2e450m2e225m1/CurveParameters.v index 8b74751e6..2ce8dbb80 100644 --- a/src/Specific/montgomery32_2e450m2e225m1/CurveParameters.v +++ b/src/Specific/montgomery32_2e450m2e225m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 14%nat; + base := 32; bitwidth := 32; s := 2^450; c := [(1, 1); (2^225, 1)]; diff --git a/src/Specific/montgomery32_2e452m3/CurveParameters.v b/src/Specific/montgomery32_2e452m3/CurveParameters.v index 47e836c87..bfac593c2 100644 --- a/src/Specific/montgomery32_2e452m3/CurveParameters.v +++ b/src/Specific/montgomery32_2e452m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 14%nat; + base := 32; bitwidth := 32; s := 2^452; c := [(1, 3)]; diff --git a/src/Specific/montgomery32_2e468m17/CurveParameters.v b/src/Specific/montgomery32_2e468m17/CurveParameters.v index 6a0bd617f..1ff5d433d 100644 --- a/src/Specific/montgomery32_2e468m17/CurveParameters.v +++ b/src/Specific/montgomery32_2e468m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 14%nat; + base := 32; bitwidth := 32; s := 2^468; c := [(1, 17)]; diff --git a/src/Specific/montgomery32_2e480m2e240m1/CurveParameters.v b/src/Specific/montgomery32_2e480m2e240m1/CurveParameters.v index 19d73fb20..e4073b6a0 100644 --- a/src/Specific/montgomery32_2e480m2e240m1/CurveParameters.v +++ b/src/Specific/montgomery32_2e480m2e240m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 15%nat; + base := 32; bitwidth := 32; s := 2^480; c := [(1, 1); (2^240, 1)]; diff --git a/src/Specific/montgomery32_2e488m17/CurveParameters.v b/src/Specific/montgomery32_2e488m17/CurveParameters.v index 614698a5d..a392806d2 100644 --- a/src/Specific/montgomery32_2e488m17/CurveParameters.v +++ b/src/Specific/montgomery32_2e488m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 15%nat; + base := 32; bitwidth := 32; s := 2^488; c := [(1, 17)]; diff --git a/src/Specific/montgomery32_2e489m21/CurveParameters.v b/src/Specific/montgomery32_2e489m21/CurveParameters.v index 01ba9b36b..7aa49d3c8 100644 --- a/src/Specific/montgomery32_2e489m21/CurveParameters.v +++ b/src/Specific/montgomery32_2e489m21/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 15%nat; + base := 32; bitwidth := 32; s := 2^489; c := [(1, 21)]; diff --git a/src/Specific/montgomery32_2e495m31/CurveParameters.v b/src/Specific/montgomery32_2e495m31/CurveParameters.v index fd3ae4973..d366176e4 100644 --- a/src/Specific/montgomery32_2e495m31/CurveParameters.v +++ b/src/Specific/montgomery32_2e495m31/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 15%nat; + base := 32; bitwidth := 32; s := 2^495; c := [(1, 31)]; diff --git a/src/Specific/montgomery32_2e511m187/CurveParameters.v b/src/Specific/montgomery32_2e511m187/CurveParameters.v index 5d2d59011..e60e97107 100644 --- a/src/Specific/montgomery32_2e511m187/CurveParameters.v +++ b/src/Specific/montgomery32_2e511m187/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 15%nat; + base := 32; bitwidth := 32; s := 2^511; c := [(1, 187)]; diff --git a/src/Specific/montgomery32_2e511m481/CurveParameters.v b/src/Specific/montgomery32_2e511m481/CurveParameters.v index a2a0ac8c6..edafe1df8 100644 --- a/src/Specific/montgomery32_2e511m481/CurveParameters.v +++ b/src/Specific/montgomery32_2e511m481/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 15%nat; + base := 32; bitwidth := 32; s := 2^511; c := [(1, 481)]; diff --git a/src/Specific/montgomery32_2e512m569/CurveParameters.v b/src/Specific/montgomery32_2e512m569/CurveParameters.v index e3b227d14..2dfb70de2 100644 --- a/src/Specific/montgomery32_2e512m569/CurveParameters.v +++ b/src/Specific/montgomery32_2e512m569/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 16%nat; + base := 32; bitwidth := 32; s := 2^512; c := [(1, 569)]; diff --git a/src/Specific/montgomery32_2e521m1/CurveParameters.v b/src/Specific/montgomery32_2e521m1/CurveParameters.v index 89dd148d5..1fc41b51e 100644 --- a/src/Specific/montgomery32_2e521m1/CurveParameters.v +++ b/src/Specific/montgomery32_2e521m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 16%nat; + base := 32; bitwidth := 32; s := 2^521; c := [(1, 1)]; diff --git a/src/Specific/montgomery64_2e127m1/CurveParameters.v b/src/Specific/montgomery64_2e127m1/CurveParameters.v index 47370182c..3cff26742 100644 --- a/src/Specific/montgomery64_2e127m1/CurveParameters.v +++ b/src/Specific/montgomery64_2e127m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 1%nat; + base := 64; bitwidth := 64; s := 2^127; c := [(1, 1)]; diff --git a/src/Specific/montgomery64_2e129m25/CurveParameters.v b/src/Specific/montgomery64_2e129m25/CurveParameters.v index c46f63358..da08712b9 100644 --- a/src/Specific/montgomery64_2e129m25/CurveParameters.v +++ b/src/Specific/montgomery64_2e129m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^129; c := [(1, 25)]; diff --git a/src/Specific/montgomery64_2e130m5/CurveParameters.v b/src/Specific/montgomery64_2e130m5/CurveParameters.v index 74d880860..3cbce9b48 100644 --- a/src/Specific/montgomery64_2e130m5/CurveParameters.v +++ b/src/Specific/montgomery64_2e130m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^130; c := [(1, 5)]; diff --git a/src/Specific/montgomery64_2e137m13/CurveParameters.v b/src/Specific/montgomery64_2e137m13/CurveParameters.v index ce06e0307..33aa6f0d3 100644 --- a/src/Specific/montgomery64_2e137m13/CurveParameters.v +++ b/src/Specific/montgomery64_2e137m13/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^137; c := [(1, 13)]; diff --git a/src/Specific/montgomery64_2e140m27/CurveParameters.v b/src/Specific/montgomery64_2e140m27/CurveParameters.v index d587823e5..695e6b715 100644 --- a/src/Specific/montgomery64_2e140m27/CurveParameters.v +++ b/src/Specific/montgomery64_2e140m27/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^140; c := [(1, 27)]; diff --git a/src/Specific/montgomery64_2e141m9/CurveParameters.v b/src/Specific/montgomery64_2e141m9/CurveParameters.v index 545052531..7995a342c 100644 --- a/src/Specific/montgomery64_2e141m9/CurveParameters.v +++ b/src/Specific/montgomery64_2e141m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^141; c := [(1, 9)]; diff --git a/src/Specific/montgomery64_2e150m3/CurveParameters.v b/src/Specific/montgomery64_2e150m3/CurveParameters.v index 937bbd064..50d5f8712 100644 --- a/src/Specific/montgomery64_2e150m3/CurveParameters.v +++ b/src/Specific/montgomery64_2e150m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^150; c := [(1, 3)]; diff --git a/src/Specific/montgomery64_2e150m5/CurveParameters.v b/src/Specific/montgomery64_2e150m5/CurveParameters.v index 7e817fdcb..52fa3e568 100644 --- a/src/Specific/montgomery64_2e150m5/CurveParameters.v +++ b/src/Specific/montgomery64_2e150m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^150; c := [(1, 5)]; diff --git a/src/Specific/montgomery64_2e152m17/CurveParameters.v b/src/Specific/montgomery64_2e152m17/CurveParameters.v index d80db4404..b1a43d05e 100644 --- a/src/Specific/montgomery64_2e152m17/CurveParameters.v +++ b/src/Specific/montgomery64_2e152m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^152; c := [(1, 17)]; diff --git a/src/Specific/montgomery64_2e158m15/CurveParameters.v b/src/Specific/montgomery64_2e158m15/CurveParameters.v index 7b673cf4c..9ac621b75 100644 --- a/src/Specific/montgomery64_2e158m15/CurveParameters.v +++ b/src/Specific/montgomery64_2e158m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^158; c := [(1, 15)]; diff --git a/src/Specific/montgomery64_2e165m25/CurveParameters.v b/src/Specific/montgomery64_2e165m25/CurveParameters.v index 4cf2e2634..7367f1917 100644 --- a/src/Specific/montgomery64_2e165m25/CurveParameters.v +++ b/src/Specific/montgomery64_2e165m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^165; c := [(1, 25)]; diff --git a/src/Specific/montgomery64_2e166m5/CurveParameters.v b/src/Specific/montgomery64_2e166m5/CurveParameters.v index cded4a72b..e4eb3863a 100644 --- a/src/Specific/montgomery64_2e166m5/CurveParameters.v +++ b/src/Specific/montgomery64_2e166m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^166; c := [(1, 5)]; diff --git a/src/Specific/montgomery64_2e171m19/CurveParameters.v b/src/Specific/montgomery64_2e171m19/CurveParameters.v index b0058cd54..12a53ed35 100644 --- a/src/Specific/montgomery64_2e171m19/CurveParameters.v +++ b/src/Specific/montgomery64_2e171m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^171; c := [(1, 19)]; diff --git a/src/Specific/montgomery64_2e174m17/CurveParameters.v b/src/Specific/montgomery64_2e174m17/CurveParameters.v index 211d241b3..a642cc5f9 100644 --- a/src/Specific/montgomery64_2e174m17/CurveParameters.v +++ b/src/Specific/montgomery64_2e174m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^174; c := [(1, 17)]; diff --git a/src/Specific/montgomery64_2e174m3/CurveParameters.v b/src/Specific/montgomery64_2e174m3/CurveParameters.v index babe5e156..c7cfe5599 100644 --- a/src/Specific/montgomery64_2e174m3/CurveParameters.v +++ b/src/Specific/montgomery64_2e174m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^174; c := [(1, 3)]; diff --git a/src/Specific/montgomery64_2e189m25/CurveParameters.v b/src/Specific/montgomery64_2e189m25/CurveParameters.v index b8db361c3..cc2f90097 100644 --- a/src/Specific/montgomery64_2e189m25/CurveParameters.v +++ b/src/Specific/montgomery64_2e189m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^189; c := [(1, 25)]; diff --git a/src/Specific/montgomery64_2e190m11/CurveParameters.v b/src/Specific/montgomery64_2e190m11/CurveParameters.v index 1d67492a9..2f12f5ada 100644 --- a/src/Specific/montgomery64_2e190m11/CurveParameters.v +++ b/src/Specific/montgomery64_2e190m11/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^190; c := [(1, 11)]; diff --git a/src/Specific/montgomery64_2e191m19/CurveParameters.v b/src/Specific/montgomery64_2e191m19/CurveParameters.v index 0b1f0d8d6..f598649f4 100644 --- a/src/Specific/montgomery64_2e191m19/CurveParameters.v +++ b/src/Specific/montgomery64_2e191m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 2%nat; + base := 64; bitwidth := 64; s := 2^191; c := [(1, 19)]; diff --git a/src/Specific/montgomery64_2e192m2e64m1/CurveParameters.v b/src/Specific/montgomery64_2e192m2e64m1/CurveParameters.v index 0b6aa57a5..274e7a06d 100644 --- a/src/Specific/montgomery64_2e192m2e64m1/CurveParameters.v +++ b/src/Specific/montgomery64_2e192m2e64m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^192; c := [(1, 1); (2^64, 1)]; diff --git a/src/Specific/montgomery64_2e194m33/CurveParameters.v b/src/Specific/montgomery64_2e194m33/CurveParameters.v index 85cf391dc..1ee1f898c 100644 --- a/src/Specific/montgomery64_2e194m33/CurveParameters.v +++ b/src/Specific/montgomery64_2e194m33/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^194; c := [(1, 33)]; diff --git a/src/Specific/montgomery64_2e196m15/CurveParameters.v b/src/Specific/montgomery64_2e196m15/CurveParameters.v index 3e600aaff..dd98299e3 100644 --- a/src/Specific/montgomery64_2e196m15/CurveParameters.v +++ b/src/Specific/montgomery64_2e196m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^196; c := [(1, 15)]; diff --git a/src/Specific/montgomery64_2e198m17/CurveParameters.v b/src/Specific/montgomery64_2e198m17/CurveParameters.v index 3f7528bc5..b4c22eee4 100644 --- a/src/Specific/montgomery64_2e198m17/CurveParameters.v +++ b/src/Specific/montgomery64_2e198m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^198; c := [(1, 17)]; diff --git a/src/Specific/montgomery64_2e206m5/CurveParameters.v b/src/Specific/montgomery64_2e206m5/CurveParameters.v index f1f8c44e5..0e9f3ce8f 100644 --- a/src/Specific/montgomery64_2e206m5/CurveParameters.v +++ b/src/Specific/montgomery64_2e206m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^206; c := [(1, 5)]; diff --git a/src/Specific/montgomery64_2e212m29/CurveParameters.v b/src/Specific/montgomery64_2e212m29/CurveParameters.v index c51c61c23..917d26e1d 100644 --- a/src/Specific/montgomery64_2e212m29/CurveParameters.v +++ b/src/Specific/montgomery64_2e212m29/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^212; c := [(1, 29)]; diff --git a/src/Specific/montgomery64_2e213m3/CurveParameters.v b/src/Specific/montgomery64_2e213m3/CurveParameters.v index beedf7554..2b8116172 100644 --- a/src/Specific/montgomery64_2e213m3/CurveParameters.v +++ b/src/Specific/montgomery64_2e213m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^213; c := [(1, 3)]; diff --git a/src/Specific/montgomery64_2e216m2e108m1/CurveParameters.v b/src/Specific/montgomery64_2e216m2e108m1/CurveParameters.v index de17a43f9..87eea5950 100644 --- a/src/Specific/montgomery64_2e216m2e108m1/CurveParameters.v +++ b/src/Specific/montgomery64_2e216m2e108m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^216; c := [(1, 1); (2^108, 1)]; diff --git a/src/Specific/montgomery64_2e221m3/CurveParameters.v b/src/Specific/montgomery64_2e221m3/CurveParameters.v index 1b05f2b5e..07eb471a4 100644 --- a/src/Specific/montgomery64_2e221m3/CurveParameters.v +++ b/src/Specific/montgomery64_2e221m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^221; c := [(1, 3)]; diff --git a/src/Specific/montgomery64_2e222m117/CurveParameters.v b/src/Specific/montgomery64_2e222m117/CurveParameters.v index e91895555..12197d8c1 100644 --- a/src/Specific/montgomery64_2e222m117/CurveParameters.v +++ b/src/Specific/montgomery64_2e222m117/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^222; c := [(1, 117)]; diff --git a/src/Specific/montgomery64_2e224m2e96p1/CurveParameters.v b/src/Specific/montgomery64_2e224m2e96p1/CurveParameters.v index b75df72ab..a67a6fa82 100644 --- a/src/Specific/montgomery64_2e224m2e96p1/CurveParameters.v +++ b/src/Specific/montgomery64_2e224m2e96p1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^224; c := [(1, -1); (2^96, 1)]; diff --git a/src/Specific/montgomery64_2e226m5/CurveParameters.v b/src/Specific/montgomery64_2e226m5/CurveParameters.v index 0cf8281f3..1d44e7e4d 100644 --- a/src/Specific/montgomery64_2e226m5/CurveParameters.v +++ b/src/Specific/montgomery64_2e226m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^226; c := [(1, 5)]; diff --git a/src/Specific/montgomery64_2e230m27/CurveParameters.v b/src/Specific/montgomery64_2e230m27/CurveParameters.v index f65113c47..4ab77e91b 100644 --- a/src/Specific/montgomery64_2e230m27/CurveParameters.v +++ b/src/Specific/montgomery64_2e230m27/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^230; c := [(1, 27)]; diff --git a/src/Specific/montgomery64_2e235m15/CurveParameters.v b/src/Specific/montgomery64_2e235m15/CurveParameters.v index f4f01625c..fbedeca2c 100644 --- a/src/Specific/montgomery64_2e235m15/CurveParameters.v +++ b/src/Specific/montgomery64_2e235m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^235; c := [(1, 15)]; diff --git a/src/Specific/montgomery64_2e243m9/CurveParameters.v b/src/Specific/montgomery64_2e243m9/CurveParameters.v index cdc1b8e6b..e8b538f70 100644 --- a/src/Specific/montgomery64_2e243m9/CurveParameters.v +++ b/src/Specific/montgomery64_2e243m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^243; c := [(1, 9)]; diff --git a/src/Specific/montgomery64_2e251m9/CurveParameters.v b/src/Specific/montgomery64_2e251m9/CurveParameters.v index ce7f5f766..09e295c46 100644 --- a/src/Specific/montgomery64_2e251m9/CurveParameters.v +++ b/src/Specific/montgomery64_2e251m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^251; c := [(1, 9)]; diff --git a/src/Specific/montgomery64_2e255m19/CurveParameters.v b/src/Specific/montgomery64_2e255m19/CurveParameters.v index 574297de5..0f1bd8d29 100644 --- a/src/Specific/montgomery64_2e255m19/CurveParameters.v +++ b/src/Specific/montgomery64_2e255m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^255; c := [(1, 19)]; diff --git a/src/Specific/montgomery64_2e255m2e4m2e1m1/CurveParameters.v b/src/Specific/montgomery64_2e255m2e4m2e1m1/CurveParameters.v index a58f6c71c..1a8b1666a 100644 --- a/src/Specific/montgomery64_2e255m2e4m2e1m1/CurveParameters.v +++ b/src/Specific/montgomery64_2e255m2e4m2e1m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^255; c := [(1, 1); (2^1, 1); (2^4, 1)]; diff --git a/src/Specific/montgomery64_2e255m765/CurveParameters.v b/src/Specific/montgomery64_2e255m765/CurveParameters.v index 728175495..4b2cff902 100644 --- a/src/Specific/montgomery64_2e255m765/CurveParameters.v +++ b/src/Specific/montgomery64_2e255m765/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 3%nat; + base := 64; bitwidth := 64; s := 2^255; c := [(1, 765)]; diff --git a/src/Specific/montgomery64_2e256m189/CurveParameters.v b/src/Specific/montgomery64_2e256m189/CurveParameters.v index 32f422e49..45e0e606f 100644 --- a/src/Specific/montgomery64_2e256m189/CurveParameters.v +++ b/src/Specific/montgomery64_2e256m189/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 4%nat; + base := 64; bitwidth := 64; s := 2^256; c := [(1, 189)]; diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1/CurveParameters.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1/CurveParameters.v index 35a36d4b5..ded104af1 100644 --- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1/CurveParameters.v +++ b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 4%nat; + base := 64; bitwidth := 64; s := 2^256; c := [(1, 1); (2^96, -1); (2^192, -1); (2^224, 1)]; diff --git a/src/Specific/montgomery64_2e256m2e32m977/CurveParameters.v b/src/Specific/montgomery64_2e256m2e32m977/CurveParameters.v index 33b48b76d..9c065e667 100644 --- a/src/Specific/montgomery64_2e256m2e32m977/CurveParameters.v +++ b/src/Specific/montgomery64_2e256m2e32m977/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 4%nat; + base := 64; bitwidth := 64; s := 2^256; c := [(1, 977); (2^32, 1)]; diff --git a/src/Specific/montgomery64_2e266m3/CurveParameters.v b/src/Specific/montgomery64_2e266m3/CurveParameters.v index 0b2f50766..86e248078 100644 --- a/src/Specific/montgomery64_2e266m3/CurveParameters.v +++ b/src/Specific/montgomery64_2e266m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 4%nat; + base := 64; bitwidth := 64; s := 2^266; c := [(1, 3)]; diff --git a/src/Specific/montgomery64_2e285m9/CurveParameters.v b/src/Specific/montgomery64_2e285m9/CurveParameters.v index d275f876f..d64a049db 100644 --- a/src/Specific/montgomery64_2e285m9/CurveParameters.v +++ b/src/Specific/montgomery64_2e285m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 4%nat; + base := 64; bitwidth := 64; s := 2^285; c := [(1, 9)]; diff --git a/src/Specific/montgomery64_2e291m19/CurveParameters.v b/src/Specific/montgomery64_2e291m19/CurveParameters.v index 7b1a56c04..a7c8b8582 100644 --- a/src/Specific/montgomery64_2e291m19/CurveParameters.v +++ b/src/Specific/montgomery64_2e291m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 4%nat; + base := 64; bitwidth := 64; s := 2^291; c := [(1, 19)]; diff --git a/src/Specific/montgomery64_2e321m9/CurveParameters.v b/src/Specific/montgomery64_2e321m9/CurveParameters.v index e10a581e8..80b72e6a1 100644 --- a/src/Specific/montgomery64_2e321m9/CurveParameters.v +++ b/src/Specific/montgomery64_2e321m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 5%nat; + base := 64; bitwidth := 64; s := 2^321; c := [(1, 9)]; diff --git a/src/Specific/montgomery64_2e322m2e161m1/CurveParameters.v b/src/Specific/montgomery64_2e322m2e161m1/CurveParameters.v index 473c9ebae..af412b089 100644 --- a/src/Specific/montgomery64_2e322m2e161m1/CurveParameters.v +++ b/src/Specific/montgomery64_2e322m2e161m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 5%nat; + base := 64; bitwidth := 64; s := 2^322; c := [(1, 1); (2^161, 1)]; diff --git a/src/Specific/montgomery64_2e336m17/CurveParameters.v b/src/Specific/montgomery64_2e336m17/CurveParameters.v index b1f2674dc..6fcd45813 100644 --- a/src/Specific/montgomery64_2e336m17/CurveParameters.v +++ b/src/Specific/montgomery64_2e336m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 5%nat; + base := 64; bitwidth := 64; s := 2^336; c := [(1, 17)]; diff --git a/src/Specific/montgomery64_2e336m3/CurveParameters.v b/src/Specific/montgomery64_2e336m3/CurveParameters.v index 6e476d776..357ec07d3 100644 --- a/src/Specific/montgomery64_2e336m3/CurveParameters.v +++ b/src/Specific/montgomery64_2e336m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 5%nat; + base := 64; bitwidth := 64; s := 2^336; c := [(1, 3)]; diff --git a/src/Specific/montgomery64_2e338m15/CurveParameters.v b/src/Specific/montgomery64_2e338m15/CurveParameters.v index c3129ebc2..2469355f3 100644 --- a/src/Specific/montgomery64_2e338m15/CurveParameters.v +++ b/src/Specific/montgomery64_2e338m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 5%nat; + base := 64; bitwidth := 64; s := 2^338; c := [(1, 15)]; diff --git a/src/Specific/montgomery64_2e369m25/CurveParameters.v b/src/Specific/montgomery64_2e369m25/CurveParameters.v index d6a9b3a32..68e2ddf13 100644 --- a/src/Specific/montgomery64_2e369m25/CurveParameters.v +++ b/src/Specific/montgomery64_2e369m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 5%nat; + base := 64; bitwidth := 64; s := 2^369; c := [(1, 25)]; diff --git a/src/Specific/montgomery64_2e379m19/CurveParameters.v b/src/Specific/montgomery64_2e379m19/CurveParameters.v index de21ec61e..7ccff7ae7 100644 --- a/src/Specific/montgomery64_2e379m19/CurveParameters.v +++ b/src/Specific/montgomery64_2e379m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 5%nat; + base := 64; bitwidth := 64; s := 2^379; c := [(1, 19)]; diff --git a/src/Specific/montgomery64_2e382m105/CurveParameters.v b/src/Specific/montgomery64_2e382m105/CurveParameters.v index 4f77a2081..2a3a3b6cc 100644 --- a/src/Specific/montgomery64_2e382m105/CurveParameters.v +++ b/src/Specific/montgomery64_2e382m105/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 5%nat; + base := 64; bitwidth := 64; s := 2^382; c := [(1, 105)]; diff --git a/src/Specific/montgomery64_2e383m187/CurveParameters.v b/src/Specific/montgomery64_2e383m187/CurveParameters.v index 50a96b2e2..11296b9cb 100644 --- a/src/Specific/montgomery64_2e383m187/CurveParameters.v +++ b/src/Specific/montgomery64_2e383m187/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 5%nat; + base := 64; bitwidth := 64; s := 2^383; c := [(1, 187)]; diff --git a/src/Specific/montgomery64_2e383m31/CurveParameters.v b/src/Specific/montgomery64_2e383m31/CurveParameters.v index 355da2cc8..7e8a4f6ed 100644 --- a/src/Specific/montgomery64_2e383m31/CurveParameters.v +++ b/src/Specific/montgomery64_2e383m31/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 5%nat; + base := 64; bitwidth := 64; s := 2^383; c := [(1, 31)]; diff --git a/src/Specific/montgomery64_2e383m421/CurveParameters.v b/src/Specific/montgomery64_2e383m421/CurveParameters.v index c0bd5fe64..5b2ac43b4 100644 --- a/src/Specific/montgomery64_2e383m421/CurveParameters.v +++ b/src/Specific/montgomery64_2e383m421/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 5%nat; + base := 64; bitwidth := 64; s := 2^383; c := [(1, 421)]; diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1/CurveParameters.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1/CurveParameters.v index 8b29e6620..790302664 100644 --- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1/CurveParameters.v +++ b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 6%nat; + base := 64; bitwidth := 64; s := 2^384; c := [(1, 1); (2^32, -1); (2^96, 1); (2^128, 1)]; diff --git a/src/Specific/montgomery64_2e384m317/CurveParameters.v b/src/Specific/montgomery64_2e384m317/CurveParameters.v index a43f2fdc0..189e04497 100644 --- a/src/Specific/montgomery64_2e384m317/CurveParameters.v +++ b/src/Specific/montgomery64_2e384m317/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 6%nat; + base := 64; bitwidth := 64; s := 2^384; c := [(1, 317)]; diff --git a/src/Specific/montgomery64_2e389m21/CurveParameters.v b/src/Specific/montgomery64_2e389m21/CurveParameters.v index 0a01b5ee7..cafb3e08b 100644 --- a/src/Specific/montgomery64_2e389m21/CurveParameters.v +++ b/src/Specific/montgomery64_2e389m21/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 6%nat; + base := 64; bitwidth := 64; s := 2^389; c := [(1, 21)]; diff --git a/src/Specific/montgomery64_2e401m31/CurveParameters.v b/src/Specific/montgomery64_2e401m31/CurveParameters.v index 8b8cb1387..90ea36075 100644 --- a/src/Specific/montgomery64_2e401m31/CurveParameters.v +++ b/src/Specific/montgomery64_2e401m31/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 6%nat; + base := 64; bitwidth := 64; s := 2^401; c := [(1, 31)]; diff --git a/src/Specific/montgomery64_2e413m21/CurveParameters.v b/src/Specific/montgomery64_2e413m21/CurveParameters.v index 138026294..a4799b1ec 100644 --- a/src/Specific/montgomery64_2e413m21/CurveParameters.v +++ b/src/Specific/montgomery64_2e413m21/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 6%nat; + base := 64; bitwidth := 64; s := 2^413; c := [(1, 21)]; diff --git a/src/Specific/montgomery64_2e414m17/CurveParameters.v b/src/Specific/montgomery64_2e414m17/CurveParameters.v index 8739048a2..0527b15c5 100644 --- a/src/Specific/montgomery64_2e414m17/CurveParameters.v +++ b/src/Specific/montgomery64_2e414m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 6%nat; + base := 64; bitwidth := 64; s := 2^414; c := [(1, 17)]; diff --git a/src/Specific/montgomery64_2e416m2e208m1/CurveParameters.v b/src/Specific/montgomery64_2e416m2e208m1/CurveParameters.v index 7c1f436a2..67bccbc64 100644 --- a/src/Specific/montgomery64_2e416m2e208m1/CurveParameters.v +++ b/src/Specific/montgomery64_2e416m2e208m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 6%nat; + base := 64; bitwidth := 64; s := 2^416; c := [(1, 1); (2^208, 1)]; diff --git a/src/Specific/montgomery64_2e444m17/CurveParameters.v b/src/Specific/montgomery64_2e444m17/CurveParameters.v index d747364ac..6000dfa9b 100644 --- a/src/Specific/montgomery64_2e444m17/CurveParameters.v +++ b/src/Specific/montgomery64_2e444m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 6%nat; + base := 64; bitwidth := 64; s := 2^444; c := [(1, 17)]; diff --git a/src/Specific/montgomery64_2e448m2e224m1/CurveParameters.v b/src/Specific/montgomery64_2e448m2e224m1/CurveParameters.v index 7b7b3e65c..d0871f963 100644 --- a/src/Specific/montgomery64_2e448m2e224m1/CurveParameters.v +++ b/src/Specific/montgomery64_2e448m2e224m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 7%nat; + base := 64; bitwidth := 64; s := 2^448; c := [(1, 1); (2^224, 1)]; diff --git a/src/Specific/montgomery64_2e450m2e225m1/CurveParameters.v b/src/Specific/montgomery64_2e450m2e225m1/CurveParameters.v index 50082723f..1bded1301 100644 --- a/src/Specific/montgomery64_2e450m2e225m1/CurveParameters.v +++ b/src/Specific/montgomery64_2e450m2e225m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 7%nat; + base := 64; bitwidth := 64; s := 2^450; c := [(1, 1); (2^225, 1)]; diff --git a/src/Specific/montgomery64_2e452m3/CurveParameters.v b/src/Specific/montgomery64_2e452m3/CurveParameters.v index 91b59fc14..206b538a4 100644 --- a/src/Specific/montgomery64_2e452m3/CurveParameters.v +++ b/src/Specific/montgomery64_2e452m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 7%nat; + base := 64; bitwidth := 64; s := 2^452; c := [(1, 3)]; diff --git a/src/Specific/montgomery64_2e468m17/CurveParameters.v b/src/Specific/montgomery64_2e468m17/CurveParameters.v index bb4b44300..2881d2193 100644 --- a/src/Specific/montgomery64_2e468m17/CurveParameters.v +++ b/src/Specific/montgomery64_2e468m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 7%nat; + base := 64; bitwidth := 64; s := 2^468; c := [(1, 17)]; diff --git a/src/Specific/montgomery64_2e480m2e240m1/CurveParameters.v b/src/Specific/montgomery64_2e480m2e240m1/CurveParameters.v index 2253d41e9..24c2d43cb 100644 --- a/src/Specific/montgomery64_2e480m2e240m1/CurveParameters.v +++ b/src/Specific/montgomery64_2e480m2e240m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 7%nat; + base := 64; bitwidth := 64; s := 2^480; c := [(1, 1); (2^240, 1)]; diff --git a/src/Specific/montgomery64_2e488m17/CurveParameters.v b/src/Specific/montgomery64_2e488m17/CurveParameters.v index cf9e878f3..bec557569 100644 --- a/src/Specific/montgomery64_2e488m17/CurveParameters.v +++ b/src/Specific/montgomery64_2e488m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 7%nat; + base := 64; bitwidth := 64; s := 2^488; c := [(1, 17)]; diff --git a/src/Specific/montgomery64_2e489m21/CurveParameters.v b/src/Specific/montgomery64_2e489m21/CurveParameters.v index 492fb558a..a54a56a6f 100644 --- a/src/Specific/montgomery64_2e489m21/CurveParameters.v +++ b/src/Specific/montgomery64_2e489m21/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 7%nat; + base := 64; bitwidth := 64; s := 2^489; c := [(1, 21)]; diff --git a/src/Specific/montgomery64_2e495m31/CurveParameters.v b/src/Specific/montgomery64_2e495m31/CurveParameters.v index 223a60eae..724f4d062 100644 --- a/src/Specific/montgomery64_2e495m31/CurveParameters.v +++ b/src/Specific/montgomery64_2e495m31/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 7%nat; + base := 64; bitwidth := 64; s := 2^495; c := [(1, 31)]; diff --git a/src/Specific/montgomery64_2e511m187/CurveParameters.v b/src/Specific/montgomery64_2e511m187/CurveParameters.v index 67ebc276e..01ddf626d 100644 --- a/src/Specific/montgomery64_2e511m187/CurveParameters.v +++ b/src/Specific/montgomery64_2e511m187/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 7%nat; + base := 64; bitwidth := 64; s := 2^511; c := [(1, 187)]; diff --git a/src/Specific/montgomery64_2e511m481/CurveParameters.v b/src/Specific/montgomery64_2e511m481/CurveParameters.v index d989ba385..9b39c3362 100644 --- a/src/Specific/montgomery64_2e511m481/CurveParameters.v +++ b/src/Specific/montgomery64_2e511m481/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 7%nat; + base := 64; bitwidth := 64; s := 2^511; c := [(1, 481)]; diff --git a/src/Specific/montgomery64_2e512m569/CurveParameters.v b/src/Specific/montgomery64_2e512m569/CurveParameters.v index 13caf487e..6cc21b0e5 100644 --- a/src/Specific/montgomery64_2e512m569/CurveParameters.v +++ b/src/Specific/montgomery64_2e512m569/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 8%nat; + base := 64; bitwidth := 64; s := 2^512; c := [(1, 569)]; diff --git a/src/Specific/montgomery64_2e521m1/CurveParameters.v b/src/Specific/montgomery64_2e521m1/CurveParameters.v index bdb86dec8..5f50e8117 100644 --- a/src/Specific/montgomery64_2e521m1/CurveParameters.v +++ b/src/Specific/montgomery64_2e521m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 64 Definition curve : CurveParameters := {| sz := 8%nat; + base := 64; bitwidth := 64; s := 2^521; c := [(1, 1)]; diff --git a/src/Specific/solinas32_2e127m1/CurveParameters.v b/src/Specific/solinas32_2e127m1/CurveParameters.v index a3aeb5dad..88a440104 100644 --- a/src/Specific/solinas32_2e127m1/CurveParameters.v +++ b/src/Specific/solinas32_2e127m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 21 Definition curve : CurveParameters := {| sz := 6%nat; + base := 21; bitwidth := 32; s := 2^127; c := [(1, 1)]; diff --git a/src/Specific/solinas32_2e129m25/CurveParameters.v b/src/Specific/solinas32_2e129m25/CurveParameters.v index 1e1f480b2..751d88025 100644 --- a/src/Specific/solinas32_2e129m25/CurveParameters.v +++ b/src/Specific/solinas32_2e129m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 21 Definition curve : CurveParameters := {| sz := 6%nat; + base := 21; bitwidth := 32; s := 2^129; c := [(1, 25)]; diff --git a/src/Specific/solinas32_2e130m5/CurveParameters.v b/src/Specific/solinas32_2e130m5/CurveParameters.v index 30dbf2e00..e0a411f19 100644 --- a/src/Specific/solinas32_2e130m5/CurveParameters.v +++ b/src/Specific/solinas32_2e130m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 16 Definition curve : CurveParameters := {| sz := 8%nat; + base := 16; bitwidth := 32; s := 2^130; c := [(1, 5)]; diff --git a/src/Specific/solinas32_2e137m13/CurveParameters.v b/src/Specific/solinas32_2e137m13/CurveParameters.v index 13a61ff27..32edba1bf 100644 --- a/src/Specific/solinas32_2e137m13/CurveParameters.v +++ b/src/Specific/solinas32_2e137m13/CurveParameters.v @@ -9,6 +9,7 @@ Base: 17 Definition curve : CurveParameters := {| sz := 8%nat; + base := 17; bitwidth := 32; s := 2^137; c := [(1, 13)]; diff --git a/src/Specific/solinas32_2e140m27/CurveParameters.v b/src/Specific/solinas32_2e140m27/CurveParameters.v index 7704604d7..ff2a817c9 100644 --- a/src/Specific/solinas32_2e140m27/CurveParameters.v +++ b/src/Specific/solinas32_2e140m27/CurveParameters.v @@ -9,6 +9,7 @@ Base: 20 Definition curve : CurveParameters := {| sz := 7%nat; + base := 20; bitwidth := 32; s := 2^140; c := [(1, 27)]; diff --git a/src/Specific/solinas32_2e141m9/CurveParameters.v b/src/Specific/solinas32_2e141m9/CurveParameters.v index 443201dc7..c7cdb8630 100644 --- a/src/Specific/solinas32_2e141m9/CurveParameters.v +++ b/src/Specific/solinas32_2e141m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 20 Definition curve : CurveParameters := {| sz := 7%nat; + base := 20; bitwidth := 32; s := 2^141; c := [(1, 9)]; diff --git a/src/Specific/solinas32_2e150m3/CurveParameters.v b/src/Specific/solinas32_2e150m3/CurveParameters.v index 70f68572c..2ed5af242 100644 --- a/src/Specific/solinas32_2e150m3/CurveParameters.v +++ b/src/Specific/solinas32_2e150m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 25 Definition curve : CurveParameters := {| sz := 6%nat; + base := 25; bitwidth := 32; s := 2^150; c := [(1, 3)]; diff --git a/src/Specific/solinas32_2e150m5/CurveParameters.v b/src/Specific/solinas32_2e150m5/CurveParameters.v index 5f65326ff..fe8170e46 100644 --- a/src/Specific/solinas32_2e150m5/CurveParameters.v +++ b/src/Specific/solinas32_2e150m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 15 Definition curve : CurveParameters := {| sz := 10%nat; + base := 15; bitwidth := 32; s := 2^150; c := [(1, 5)]; diff --git a/src/Specific/solinas32_2e152m17/CurveParameters.v b/src/Specific/solinas32_2e152m17/CurveParameters.v index 162c9a176..846416f46 100644 --- a/src/Specific/solinas32_2e152m17/CurveParameters.v +++ b/src/Specific/solinas32_2e152m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 19 Definition curve : CurveParameters := {| sz := 8%nat; + base := 19; bitwidth := 32; s := 2^152; c := [(1, 17)]; diff --git a/src/Specific/solinas32_2e158m15/CurveParameters.v b/src/Specific/solinas32_2e158m15/CurveParameters.v index aac81cfc9..ba0ee328f 100644 --- a/src/Specific/solinas32_2e158m15/CurveParameters.v +++ b/src/Specific/solinas32_2e158m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 13 Definition curve : CurveParameters := {| sz := 12%nat; + base := 13; bitwidth := 32; s := 2^158; c := [(1, 15)]; diff --git a/src/Specific/solinas32_2e165m25/CurveParameters.v b/src/Specific/solinas32_2e165m25/CurveParameters.v index 36c61dad1..ee2bd7088 100644 --- a/src/Specific/solinas32_2e165m25/CurveParameters.v +++ b/src/Specific/solinas32_2e165m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 18 Definition curve : CurveParameters := {| sz := 9%nat; + base := 18; bitwidth := 32; s := 2^165; c := [(1, 25)]; diff --git a/src/Specific/solinas32_2e166m5/CurveParameters.v b/src/Specific/solinas32_2e166m5/CurveParameters.v index e95606dcb..3cd6d3959 100644 --- a/src/Specific/solinas32_2e166m5/CurveParameters.v +++ b/src/Specific/solinas32_2e166m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 15 Definition curve : CurveParameters := {| sz := 11%nat; + base := 15; bitwidth := 32; s := 2^166; c := [(1, 5)]; diff --git a/src/Specific/solinas32_2e171m19/CurveParameters.v b/src/Specific/solinas32_2e171m19/CurveParameters.v index 121c79854..99b98f018 100644 --- a/src/Specific/solinas32_2e171m19/CurveParameters.v +++ b/src/Specific/solinas32_2e171m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 19 Definition curve : CurveParameters := {| sz := 9%nat; + base := 19; bitwidth := 32; s := 2^171; c := [(1, 19)]; diff --git a/src/Specific/solinas32_2e174m17/CurveParameters.v b/src/Specific/solinas32_2e174m17/CurveParameters.v index bb4d5900d..6df8a62b1 100644 --- a/src/Specific/solinas32_2e174m17/CurveParameters.v +++ b/src/Specific/solinas32_2e174m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 19 Definition curve : CurveParameters := {| sz := 9%nat; + base := 19; bitwidth := 32; s := 2^174; c := [(1, 17)]; diff --git a/src/Specific/solinas32_2e174m3/CurveParameters.v b/src/Specific/solinas32_2e174m3/CurveParameters.v index 544b44105..6cf82b368 100644 --- a/src/Specific/solinas32_2e174m3/CurveParameters.v +++ b/src/Specific/solinas32_2e174m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 19 Definition curve : CurveParameters := {| sz := 9%nat; + base := 19; bitwidth := 32; s := 2^174; c := [(1, 3)]; diff --git a/src/Specific/solinas32_2e189m25/CurveParameters.v b/src/Specific/solinas32_2e189m25/CurveParameters.v index b0856234b..1aac16970 100644 --- a/src/Specific/solinas32_2e189m25/CurveParameters.v +++ b/src/Specific/solinas32_2e189m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 21 Definition curve : CurveParameters := {| sz := 9%nat; + base := 21; bitwidth := 32; s := 2^189; c := [(1, 25)]; diff --git a/src/Specific/solinas32_2e190m11/CurveParameters.v b/src/Specific/solinas32_2e190m11/CurveParameters.v index d2d4bf8f6..36dac4f68 100644 --- a/src/Specific/solinas32_2e190m11/CurveParameters.v +++ b/src/Specific/solinas32_2e190m11/CurveParameters.v @@ -9,6 +9,7 @@ Base: 21 Definition curve : CurveParameters := {| sz := 9%nat; + base := 21; bitwidth := 32; s := 2^190; c := [(1, 11)]; diff --git a/src/Specific/solinas32_2e191m19/CurveParameters.v b/src/Specific/solinas32_2e191m19/CurveParameters.v index 9736c3d90..cf183ae40 100644 --- a/src/Specific/solinas32_2e191m19/CurveParameters.v +++ b/src/Specific/solinas32_2e191m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 19 Definition curve : CurveParameters := {| sz := 10%nat; + base := 19; bitwidth := 32; s := 2^191; c := [(1, 19)]; diff --git a/src/Specific/solinas32_2e192m2e64m1/CurveParameters.v b/src/Specific/solinas32_2e192m2e64m1/CurveParameters.v index 0d40d5e8f..637a7628f 100644 --- a/src/Specific/solinas32_2e192m2e64m1/CurveParameters.v +++ b/src/Specific/solinas32_2e192m2e64m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 24 Definition curve : CurveParameters := {| sz := 8%nat; + base := 24; bitwidth := 32; s := 2^192; c := [(1, 1); (2^64, 1)]; diff --git a/src/Specific/solinas32_2e194m33/CurveParameters.v b/src/Specific/solinas32_2e194m33/CurveParameters.v index ac714a6de..7b82a6d88 100644 --- a/src/Specific/solinas32_2e194m33/CurveParameters.v +++ b/src/Specific/solinas32_2e194m33/CurveParameters.v @@ -9,6 +9,7 @@ Base: 16 Definition curve : CurveParameters := {| sz := 12%nat; + base := 16; bitwidth := 32; s := 2^194; c := [(1, 33)]; diff --git a/src/Specific/solinas32_2e196m15/CurveParameters.v b/src/Specific/solinas32_2e196m15/CurveParameters.v index 5f1ca68b8..1bbe7a4b8 100644 --- a/src/Specific/solinas32_2e196m15/CurveParameters.v +++ b/src/Specific/solinas32_2e196m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 24 Definition curve : CurveParameters := {| sz := 8%nat; + base := 24; bitwidth := 32; s := 2^196; c := [(1, 15)]; diff --git a/src/Specific/solinas32_2e198m17/CurveParameters.v b/src/Specific/solinas32_2e198m17/CurveParameters.v index 613beefd0..79185d696 100644 --- a/src/Specific/solinas32_2e198m17/CurveParameters.v +++ b/src/Specific/solinas32_2e198m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 22 Definition curve : CurveParameters := {| sz := 9%nat; + base := 22; bitwidth := 32; s := 2^198; c := [(1, 17)]; diff --git a/src/Specific/solinas32_2e206m5/CurveParameters.v b/src/Specific/solinas32_2e206m5/CurveParameters.v index 04d6be18a..07f9d3f4c 100644 --- a/src/Specific/solinas32_2e206m5/CurveParameters.v +++ b/src/Specific/solinas32_2e206m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 17 Definition curve : CurveParameters := {| sz := 12%nat; + base := 17; bitwidth := 32; s := 2^206; c := [(1, 5)]; diff --git a/src/Specific/solinas32_2e212m29/CurveParameters.v b/src/Specific/solinas32_2e212m29/CurveParameters.v index fd99bbe99..fe09da328 100644 --- a/src/Specific/solinas32_2e212m29/CurveParameters.v +++ b/src/Specific/solinas32_2e212m29/CurveParameters.v @@ -9,6 +9,7 @@ Base: 21 Definition curve : CurveParameters := {| sz := 10%nat; + base := 21; bitwidth := 32; s := 2^212; c := [(1, 29)]; diff --git a/src/Specific/solinas32_2e213m3/CurveParameters.v b/src/Specific/solinas32_2e213m3/CurveParameters.v index ea06c10d9..693c68174 100644 --- a/src/Specific/solinas32_2e213m3/CurveParameters.v +++ b/src/Specific/solinas32_2e213m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 14 Definition curve : CurveParameters := {| sz := 15%nat; + base := 14; bitwidth := 32; s := 2^213; c := [(1, 3)]; diff --git a/src/Specific/solinas32_2e216m2e108m1/CurveParameters.v b/src/Specific/solinas32_2e216m2e108m1/CurveParameters.v index 594e4ca55..ba0dcf76e 100644 --- a/src/Specific/solinas32_2e216m2e108m1/CurveParameters.v +++ b/src/Specific/solinas32_2e216m2e108m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 27 Definition curve : CurveParameters := {| sz := 8%nat; + base := 27; bitwidth := 32; s := 2^216; c := [(1, 1); (2^108, 1)]; diff --git a/src/Specific/solinas32_2e221m3/CurveParameters.v b/src/Specific/solinas32_2e221m3/CurveParameters.v index ade81eefc..8577ba6df 100644 --- a/src/Specific/solinas32_2e221m3/CurveParameters.v +++ b/src/Specific/solinas32_2e221m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 22 Definition curve : CurveParameters := {| sz := 10%nat; + base := 22; bitwidth := 32; s := 2^221; c := [(1, 3)]; diff --git a/src/Specific/solinas32_2e222m117/CurveParameters.v b/src/Specific/solinas32_2e222m117/CurveParameters.v index add4aaab2..37ac18bee 100644 --- a/src/Specific/solinas32_2e222m117/CurveParameters.v +++ b/src/Specific/solinas32_2e222m117/CurveParameters.v @@ -9,6 +9,7 @@ Base: 22 Definition curve : CurveParameters := {| sz := 10%nat; + base := 22; bitwidth := 32; s := 2^222; c := [(1, 117)]; diff --git a/src/Specific/solinas32_2e224m2e96p1/CurveParameters.v b/src/Specific/solinas32_2e224m2e96p1/CurveParameters.v index ace0603b4..1b39c9806 100644 --- a/src/Specific/solinas32_2e224m2e96p1/CurveParameters.v +++ b/src/Specific/solinas32_2e224m2e96p1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 28 Definition curve : CurveParameters := {| sz := 8%nat; + base := 28; bitwidth := 32; s := 2^224; c := [(1, -1); (2^96, 1)]; diff --git a/src/Specific/solinas32_2e226m5/CurveParameters.v b/src/Specific/solinas32_2e226m5/CurveParameters.v index 96417aa62..4db734035 100644 --- a/src/Specific/solinas32_2e226m5/CurveParameters.v +++ b/src/Specific/solinas32_2e226m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 25 Definition curve : CurveParameters := {| sz := 9%nat; + base := 25; bitwidth := 32; s := 2^226; c := [(1, 5)]; diff --git a/src/Specific/solinas32_2e230m27/CurveParameters.v b/src/Specific/solinas32_2e230m27/CurveParameters.v index e5be42277..bc7f75394 100644 --- a/src/Specific/solinas32_2e230m27/CurveParameters.v +++ b/src/Specific/solinas32_2e230m27/CurveParameters.v @@ -9,6 +9,7 @@ Base: 23 Definition curve : CurveParameters := {| sz := 10%nat; + base := 23; bitwidth := 32; s := 2^230; c := [(1, 27)]; diff --git a/src/Specific/solinas32_2e235m15/CurveParameters.v b/src/Specific/solinas32_2e235m15/CurveParameters.v index 43a282935..4bc71e156 100644 --- a/src/Specific/solinas32_2e235m15/CurveParameters.v +++ b/src/Specific/solinas32_2e235m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 23 Definition curve : CurveParameters := {| sz := 10%nat; + base := 23; bitwidth := 32; s := 2^235; c := [(1, 15)]; diff --git a/src/Specific/solinas32_2e243m9/CurveParameters.v b/src/Specific/solinas32_2e243m9/CurveParameters.v index 07cae3d4b..e71d50e3a 100644 --- a/src/Specific/solinas32_2e243m9/CurveParameters.v +++ b/src/Specific/solinas32_2e243m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 22 Definition curve : CurveParameters := {| sz := 11%nat; + base := 22; bitwidth := 32; s := 2^243; c := [(1, 9)]; diff --git a/src/Specific/solinas32_2e251m9/CurveParameters.v b/src/Specific/solinas32_2e251m9/CurveParameters.v index e15731335..257923486 100644 --- a/src/Specific/solinas32_2e251m9/CurveParameters.v +++ b/src/Specific/solinas32_2e251m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 25 Definition curve : CurveParameters := {| sz := 10%nat; + base := 25; bitwidth := 32; s := 2^251; c := [(1, 9)]; diff --git a/src/Specific/solinas32_2e255m19/CurveParameters.v b/src/Specific/solinas32_2e255m19/CurveParameters.v index c573e5a8d..13ab57fb6 100644 --- a/src/Specific/solinas32_2e255m19/CurveParameters.v +++ b/src/Specific/solinas32_2e255m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 21 Definition curve : CurveParameters := {| sz := 12%nat; + base := 21; bitwidth := 32; s := 2^255; c := [(1, 19)]; diff --git a/src/Specific/solinas32_2e255m2e4m2e1m1/CurveParameters.v b/src/Specific/solinas32_2e255m2e4m2e1m1/CurveParameters.v index 3e10b2177..9506e6f5b 100644 --- a/src/Specific/solinas32_2e255m2e4m2e1m1/CurveParameters.v +++ b/src/Specific/solinas32_2e255m2e4m2e1m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 28 Definition curve : CurveParameters := {| sz := 9%nat; + base := 28; bitwidth := 32; s := 2^255; c := [(1, 1); (2^1, 1); (2^4, 1)]; diff --git a/src/Specific/solinas32_2e255m765/CurveParameters.v b/src/Specific/solinas32_2e255m765/CurveParameters.v index 268c5ff7c..898e743f0 100644 --- a/src/Specific/solinas32_2e255m765/CurveParameters.v +++ b/src/Specific/solinas32_2e255m765/CurveParameters.v @@ -9,6 +9,7 @@ Base: 17 Definition curve : CurveParameters := {| sz := 15%nat; + base := 17; bitwidth := 32; s := 2^255; c := [(1, 765)]; diff --git a/src/Specific/solinas32_2e256m189/CurveParameters.v b/src/Specific/solinas32_2e256m189/CurveParameters.v index 5d7ef9fd4..9323a1385 100644 --- a/src/Specific/solinas32_2e256m189/CurveParameters.v +++ b/src/Specific/solinas32_2e256m189/CurveParameters.v @@ -9,6 +9,7 @@ Base: 21 Definition curve : CurveParameters := {| sz := 12%nat; + base := 21; bitwidth := 32; s := 2^256; c := [(1, 189)]; diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1/CurveParameters.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1/CurveParameters.v index e9433584a..05eb83f42 100644 --- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1/CurveParameters.v +++ b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 21 Definition curve : CurveParameters := {| sz := 12%nat; + base := 21; bitwidth := 32; s := 2^256; c := [(1, 1); (2^96, -1); (2^192, -1); (2^224, 1)]; diff --git a/src/Specific/solinas32_2e256m2e32m977/CurveParameters.v b/src/Specific/solinas32_2e256m2e32m977/CurveParameters.v index 088b65e8c..e708379b5 100644 --- a/src/Specific/solinas32_2e256m2e32m977/CurveParameters.v +++ b/src/Specific/solinas32_2e256m2e32m977/CurveParameters.v @@ -9,6 +9,7 @@ Base: 17 Definition curve : CurveParameters := {| sz := 15%nat; + base := 17; bitwidth := 32; s := 2^256; c := [(1, 977); (2^32, 1)]; diff --git a/src/Specific/solinas32_2e266m3/CurveParameters.v b/src/Specific/solinas32_2e266m3/CurveParameters.v index fe4026d1a..a11f58861 100644 --- a/src/Specific/solinas32_2e266m3/CurveParameters.v +++ b/src/Specific/solinas32_2e266m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 22 Definition curve : CurveParameters := {| sz := 12%nat; + base := 22; bitwidth := 32; s := 2^266; c := [(1, 3)]; diff --git a/src/Specific/solinas32_2e285m9/CurveParameters.v b/src/Specific/solinas32_2e285m9/CurveParameters.v index f969bd7d9..c27410c3a 100644 --- a/src/Specific/solinas32_2e285m9/CurveParameters.v +++ b/src/Specific/solinas32_2e285m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 19 Definition curve : CurveParameters := {| sz := 15%nat; + base := 19; bitwidth := 32; s := 2^285; c := [(1, 9)]; diff --git a/src/Specific/solinas32_2e291m19/CurveParameters.v b/src/Specific/solinas32_2e291m19/CurveParameters.v index 90ab80cf8..16ebd3202 100644 --- a/src/Specific/solinas32_2e291m19/CurveParameters.v +++ b/src/Specific/solinas32_2e291m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 24 Definition curve : CurveParameters := {| sz := 12%nat; + base := 24; bitwidth := 32; s := 2^291; c := [(1, 19)]; diff --git a/src/Specific/solinas32_2e321m9/CurveParameters.v b/src/Specific/solinas32_2e321m9/CurveParameters.v index edc1f33f3..82d6f50d3 100644 --- a/src/Specific/solinas32_2e321m9/CurveParameters.v +++ b/src/Specific/solinas32_2e321m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 20 Definition curve : CurveParameters := {| sz := 16%nat; + base := 20; bitwidth := 32; s := 2^321; c := [(1, 9)]; diff --git a/src/Specific/solinas32_2e322m2e161m1/CurveParameters.v b/src/Specific/solinas32_2e322m2e161m1/CurveParameters.v index 72aebc8bb..3665be7ea 100644 --- a/src/Specific/solinas32_2e322m2e161m1/CurveParameters.v +++ b/src/Specific/solinas32_2e322m2e161m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 23 Definition curve : CurveParameters := {| sz := 14%nat; + base := 23; bitwidth := 32; s := 2^322; c := [(1, 1); (2^161, 1)]; diff --git a/src/Specific/solinas32_2e336m17/CurveParameters.v b/src/Specific/solinas32_2e336m17/CurveParameters.v index c1b6bdb75..2b85734fb 100644 --- a/src/Specific/solinas32_2e336m17/CurveParameters.v +++ b/src/Specific/solinas32_2e336m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 24 Definition curve : CurveParameters := {| sz := 14%nat; + base := 24; bitwidth := 32; s := 2^336; c := [(1, 17)]; diff --git a/src/Specific/solinas32_2e336m3/CurveParameters.v b/src/Specific/solinas32_2e336m3/CurveParameters.v index fb888dece..4a66a5dee 100644 --- a/src/Specific/solinas32_2e336m3/CurveParameters.v +++ b/src/Specific/solinas32_2e336m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 24 Definition curve : CurveParameters := {| sz := 14%nat; + base := 24; bitwidth := 32; s := 2^336; c := [(1, 3)]; diff --git a/src/Specific/solinas32_2e338m15/CurveParameters.v b/src/Specific/solinas32_2e338m15/CurveParameters.v index 090c2507d..bf960a8cd 100644 --- a/src/Specific/solinas32_2e338m15/CurveParameters.v +++ b/src/Specific/solinas32_2e338m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 24 Definition curve : CurveParameters := {| sz := 14%nat; + base := 24; bitwidth := 32; s := 2^338; c := [(1, 15)]; diff --git a/src/Specific/solinas32_2e369m25/CurveParameters.v b/src/Specific/solinas32_2e369m25/CurveParameters.v index 5e3cf4a01..e2d2792a1 100644 --- a/src/Specific/solinas32_2e369m25/CurveParameters.v +++ b/src/Specific/solinas32_2e369m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 23 Definition curve : CurveParameters := {| sz := 16%nat; + base := 23; bitwidth := 32; s := 2^369; c := [(1, 25)]; diff --git a/src/Specific/solinas32_2e379m19/CurveParameters.v b/src/Specific/solinas32_2e379m19/CurveParameters.v index 317295beb..597eb60c8 100644 --- a/src/Specific/solinas32_2e379m19/CurveParameters.v +++ b/src/Specific/solinas32_2e379m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 21 Definition curve : CurveParameters := {| sz := 18%nat; + base := 21; bitwidth := 32; s := 2^379; c := [(1, 19)]; diff --git a/src/Specific/solinas32_2e382m105/CurveParameters.v b/src/Specific/solinas32_2e382m105/CurveParameters.v index e7359580e..fc8d8de2f 100644 --- a/src/Specific/solinas32_2e382m105/CurveParameters.v +++ b/src/Specific/solinas32_2e382m105/CurveParameters.v @@ -9,6 +9,7 @@ Base: 19 Definition curve : CurveParameters := {| sz := 20%nat; + base := 19; bitwidth := 32; s := 2^382; c := [(1, 105)]; diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/CurveParameters.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/CurveParameters.v index b29950df3..665b52900 100644 --- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/CurveParameters.v +++ b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 24 Definition curve : CurveParameters := {| sz := 16%nat; + base := 24; bitwidth := 32; s := 2^384; c := [(1, 1); (2^32, -1); (2^96, 1); (2^128, 1)]; diff --git a/src/Specific/solinas32_2e384m317/CurveParameters.v b/src/Specific/solinas32_2e384m317/CurveParameters.v index 2d9bf6263..bd88da389 100644 --- a/src/Specific/solinas32_2e384m317/CurveParameters.v +++ b/src/Specific/solinas32_2e384m317/CurveParameters.v @@ -9,6 +9,7 @@ Base: 21 Definition curve : CurveParameters := {| sz := 18%nat; + base := 21; bitwidth := 32; s := 2^384; c := [(1, 317)]; diff --git a/src/Specific/solinas32_2e401m31/CurveParameters.v b/src/Specific/solinas32_2e401m31/CurveParameters.v index 3fea51421..b0e9112f4 100644 --- a/src/Specific/solinas32_2e401m31/CurveParameters.v +++ b/src/Specific/solinas32_2e401m31/CurveParameters.v @@ -9,6 +9,7 @@ Base: 25 Definition curve : CurveParameters := {| sz := 16%nat; + base := 25; bitwidth := 32; s := 2^401; c := [(1, 31)]; diff --git a/src/Specific/solinas32_2e413m21/CurveParameters.v b/src/Specific/solinas32_2e413m21/CurveParameters.v index 4b3a212e3..8d245211d 100644 --- a/src/Specific/solinas32_2e413m21/CurveParameters.v +++ b/src/Specific/solinas32_2e413m21/CurveParameters.v @@ -9,6 +9,7 @@ Base: 7 Definition curve : CurveParameters := {| sz := 59%nat; + base := 7; bitwidth := 32; s := 2^413; c := [(1, 21)]; diff --git a/src/Specific/solinas32_2e414m17/CurveParameters.v b/src/Specific/solinas32_2e414m17/CurveParameters.v index da96fb060..803e45369 100644 --- a/src/Specific/solinas32_2e414m17/CurveParameters.v +++ b/src/Specific/solinas32_2e414m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 23 Definition curve : CurveParameters := {| sz := 18%nat; + base := 23; bitwidth := 32; s := 2^414; c := [(1, 17)]; diff --git a/src/Specific/solinas32_2e416m2e208m1/CurveParameters.v b/src/Specific/solinas32_2e416m2e208m1/CurveParameters.v index 6295a0867..b8347211e 100644 --- a/src/Specific/solinas32_2e416m2e208m1/CurveParameters.v +++ b/src/Specific/solinas32_2e416m2e208m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 26 Definition curve : CurveParameters := {| sz := 16%nat; + base := 26; bitwidth := 32; s := 2^416; c := [(1, 1); (2^208, 1)]; diff --git a/src/Specific/solinas32_2e444m17/CurveParameters.v b/src/Specific/solinas32_2e444m17/CurveParameters.v index 0bc85cf21..45727d7b0 100644 --- a/src/Specific/solinas32_2e444m17/CurveParameters.v +++ b/src/Specific/solinas32_2e444m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 22 Definition curve : CurveParameters := {| sz := 20%nat; + base := 22; bitwidth := 32; s := 2^444; c := [(1, 17)]; diff --git a/src/Specific/solinas32_2e448m2e224m1/CurveParameters.v b/src/Specific/solinas32_2e448m2e224m1/CurveParameters.v index 3b8d4e8ee..11bb6b4e2 100644 --- a/src/Specific/solinas32_2e448m2e224m1/CurveParameters.v +++ b/src/Specific/solinas32_2e448m2e224m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 28 Definition curve : CurveParameters := {| sz := 16%nat; + base := 28; bitwidth := 32; s := 2^448; c := [(1, 1); (2^224, 1)]; diff --git a/src/Specific/solinas32_2e450m2e225m1/CurveParameters.v b/src/Specific/solinas32_2e450m2e225m1/CurveParameters.v index f7216034e..eb7e3f444 100644 --- a/src/Specific/solinas32_2e450m2e225m1/CurveParameters.v +++ b/src/Specific/solinas32_2e450m2e225m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 28 Definition curve : CurveParameters := {| sz := 16%nat; + base := 28; bitwidth := 32; s := 2^450; c := [(1, 1); (2^225, 1)]; diff --git a/src/Specific/solinas32_2e452m3/CurveParameters.v b/src/Specific/solinas32_2e452m3/CurveParameters.v index bf185327f..e87f46107 100644 --- a/src/Specific/solinas32_2e452m3/CurveParameters.v +++ b/src/Specific/solinas32_2e452m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 25 Definition curve : CurveParameters := {| sz := 18%nat; + base := 25; bitwidth := 32; s := 2^452; c := [(1, 3)]; diff --git a/src/Specific/solinas32_2e468m17/CurveParameters.v b/src/Specific/solinas32_2e468m17/CurveParameters.v index 0e05fc82f..e44d7b682 100644 --- a/src/Specific/solinas32_2e468m17/CurveParameters.v +++ b/src/Specific/solinas32_2e468m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 19 Definition curve : CurveParameters := {| sz := 24%nat; + base := 19; bitwidth := 32; s := 2^468; c := [(1, 17)]; diff --git a/src/Specific/solinas32_2e480m2e240m1/CurveParameters.v b/src/Specific/solinas32_2e480m2e240m1/CurveParameters.v index 45051abd7..3c9b6dc39 100644 --- a/src/Specific/solinas32_2e480m2e240m1/CurveParameters.v +++ b/src/Specific/solinas32_2e480m2e240m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 30 Definition curve : CurveParameters := {| sz := 16%nat; + base := 30; bitwidth := 32; s := 2^480; c := [(1, 1); (2^240, 1)]; diff --git a/src/Specific/solinas32_2e488m17/CurveParameters.v b/src/Specific/solinas32_2e488m17/CurveParameters.v index 9c4a57305..910254a3d 100644 --- a/src/Specific/solinas32_2e488m17/CurveParameters.v +++ b/src/Specific/solinas32_2e488m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 20 Definition curve : CurveParameters := {| sz := 24%nat; + base := 20; bitwidth := 32; s := 2^488; c := [(1, 17)]; diff --git a/src/Specific/solinas32_2e489m21/CurveParameters.v b/src/Specific/solinas32_2e489m21/CurveParameters.v index 465fcdf01..5e42cf526 100644 --- a/src/Specific/solinas32_2e489m21/CurveParameters.v +++ b/src/Specific/solinas32_2e489m21/CurveParameters.v @@ -9,6 +9,7 @@ Base: 18 Definition curve : CurveParameters := {| sz := 27%nat; + base := 18; bitwidth := 32; s := 2^489; c := [(1, 21)]; diff --git a/src/Specific/solinas32_2e495m31/CurveParameters.v b/src/Specific/solinas32_2e495m31/CurveParameters.v index ea520666f..2f2b48858 100644 --- a/src/Specific/solinas32_2e495m31/CurveParameters.v +++ b/src/Specific/solinas32_2e495m31/CurveParameters.v @@ -9,6 +9,7 @@ Base: 22 Definition curve : CurveParameters := {| sz := 22%nat; + base := 22; bitwidth := 32; s := 2^495; c := [(1, 31)]; diff --git a/src/Specific/solinas32_2e511m187/CurveParameters.v b/src/Specific/solinas32_2e511m187/CurveParameters.v index c5bce978f..c6afd0f11 100644 --- a/src/Specific/solinas32_2e511m187/CurveParameters.v +++ b/src/Specific/solinas32_2e511m187/CurveParameters.v @@ -9,6 +9,7 @@ Base: 18 Definition curve : CurveParameters := {| sz := 28%nat; + base := 18; bitwidth := 32; s := 2^511; c := [(1, 187)]; diff --git a/src/Specific/solinas32_2e511m481/CurveParameters.v b/src/Specific/solinas32_2e511m481/CurveParameters.v index 839b27383..de877ff5b 100644 --- a/src/Specific/solinas32_2e511m481/CurveParameters.v +++ b/src/Specific/solinas32_2e511m481/CurveParameters.v @@ -9,6 +9,7 @@ Base: 18 Definition curve : CurveParameters := {| sz := 28%nat; + base := 18; bitwidth := 32; s := 2^511; c := [(1, 481)]; diff --git a/src/Specific/solinas32_2e512m569/CurveParameters.v b/src/Specific/solinas32_2e512m569/CurveParameters.v index 5e3245006..bc0433f2c 100644 --- a/src/Specific/solinas32_2e512m569/CurveParameters.v +++ b/src/Specific/solinas32_2e512m569/CurveParameters.v @@ -9,6 +9,7 @@ Base: 17 Definition curve : CurveParameters := {| sz := 30%nat; + base := 17; bitwidth := 32; s := 2^512; c := [(1, 569)]; diff --git a/src/Specific/solinas32_2e521m1/CurveParameters.v b/src/Specific/solinas32_2e521m1/CurveParameters.v index 6bd17770f..e5a6dfa8a 100644 --- a/src/Specific/solinas32_2e521m1/CurveParameters.v +++ b/src/Specific/solinas32_2e521m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 26 Definition curve : CurveParameters := {| sz := 20%nat; + base := 26; bitwidth := 32; s := 2^521; c := [(1, 1)]; diff --git a/src/Specific/solinas64_2e127m1/CurveParameters.v b/src/Specific/solinas64_2e127m1/CurveParameters.v index 8af535441..585295358 100644 --- a/src/Specific/solinas64_2e127m1/CurveParameters.v +++ b/src/Specific/solinas64_2e127m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 42 Definition curve : CurveParameters := {| sz := 3%nat; + base := 42; bitwidth := 64; s := 2^127; c := [(1, 1)]; diff --git a/src/Specific/solinas64_2e129m25/CurveParameters.v b/src/Specific/solinas64_2e129m25/CurveParameters.v index 7f4e537a8..832c97c99 100644 --- a/src/Specific/solinas64_2e129m25/CurveParameters.v +++ b/src/Specific/solinas64_2e129m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 4%nat; + base := 32; bitwidth := 64; s := 2^129; c := [(1, 25)]; diff --git a/src/Specific/solinas64_2e130m5/CurveParameters.v b/src/Specific/solinas64_2e130m5/CurveParameters.v index bb1ca71ec..b1ede3d74 100644 --- a/src/Specific/solinas64_2e130m5/CurveParameters.v +++ b/src/Specific/solinas64_2e130m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 4%nat; + base := 32; bitwidth := 64; s := 2^130; c := [(1, 5)]; diff --git a/src/Specific/solinas64_2e137m13/CurveParameters.v b/src/Specific/solinas64_2e137m13/CurveParameters.v index 6692e0d94..97f952285 100644 --- a/src/Specific/solinas64_2e137m13/CurveParameters.v +++ b/src/Specific/solinas64_2e137m13/CurveParameters.v @@ -9,6 +9,7 @@ Base: 34 Definition curve : CurveParameters := {| sz := 4%nat; + base := 34; bitwidth := 64; s := 2^137; c := [(1, 13)]; diff --git a/src/Specific/solinas64_2e140m27/CurveParameters.v b/src/Specific/solinas64_2e140m27/CurveParameters.v index b202655ba..1fa077d48 100644 --- a/src/Specific/solinas64_2e140m27/CurveParameters.v +++ b/src/Specific/solinas64_2e140m27/CurveParameters.v @@ -9,6 +9,7 @@ Base: 35 Definition curve : CurveParameters := {| sz := 4%nat; + base := 35; bitwidth := 64; s := 2^140; c := [(1, 27)]; diff --git a/src/Specific/solinas64_2e141m9/CurveParameters.v b/src/Specific/solinas64_2e141m9/CurveParameters.v index c8ba55e0c..42a59b213 100644 --- a/src/Specific/solinas64_2e141m9/CurveParameters.v +++ b/src/Specific/solinas64_2e141m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 35 Definition curve : CurveParameters := {| sz := 4%nat; + base := 35; bitwidth := 64; s := 2^141; c := [(1, 9)]; diff --git a/src/Specific/solinas64_2e150m3/CurveParameters.v b/src/Specific/solinas64_2e150m3/CurveParameters.v index 5f26d8bd0..263868b60 100644 --- a/src/Specific/solinas64_2e150m3/CurveParameters.v +++ b/src/Specific/solinas64_2e150m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 37 Definition curve : CurveParameters := {| sz := 4%nat; + base := 37; bitwidth := 64; s := 2^150; c := [(1, 3)]; diff --git a/src/Specific/solinas64_2e150m5/CurveParameters.v b/src/Specific/solinas64_2e150m5/CurveParameters.v index 2746bcc0a..967425999 100644 --- a/src/Specific/solinas64_2e150m5/CurveParameters.v +++ b/src/Specific/solinas64_2e150m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 37 Definition curve : CurveParameters := {| sz := 4%nat; + base := 37; bitwidth := 64; s := 2^150; c := [(1, 5)]; diff --git a/src/Specific/solinas64_2e152m17/CurveParameters.v b/src/Specific/solinas64_2e152m17/CurveParameters.v index 44bd56245..2ff237959 100644 --- a/src/Specific/solinas64_2e152m17/CurveParameters.v +++ b/src/Specific/solinas64_2e152m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 38 Definition curve : CurveParameters := {| sz := 4%nat; + base := 38; bitwidth := 64; s := 2^152; c := [(1, 17)]; diff --git a/src/Specific/solinas64_2e158m15/CurveParameters.v b/src/Specific/solinas64_2e158m15/CurveParameters.v index 53e537787..1fa028164 100644 --- a/src/Specific/solinas64_2e158m15/CurveParameters.v +++ b/src/Specific/solinas64_2e158m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 39 Definition curve : CurveParameters := {| sz := 4%nat; + base := 39; bitwidth := 64; s := 2^158; c := [(1, 15)]; diff --git a/src/Specific/solinas64_2e165m25/CurveParameters.v b/src/Specific/solinas64_2e165m25/CurveParameters.v index 02fed3fb8..c89b7b5d7 100644 --- a/src/Specific/solinas64_2e165m25/CurveParameters.v +++ b/src/Specific/solinas64_2e165m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 41 Definition curve : CurveParameters := {| sz := 4%nat; + base := 41; bitwidth := 64; s := 2^165; c := [(1, 25)]; diff --git a/src/Specific/solinas64_2e166m5/CurveParameters.v b/src/Specific/solinas64_2e166m5/CurveParameters.v index a67ae8cbf..beb1332fe 100644 --- a/src/Specific/solinas64_2e166m5/CurveParameters.v +++ b/src/Specific/solinas64_2e166m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 41 Definition curve : CurveParameters := {| sz := 4%nat; + base := 41; bitwidth := 64; s := 2^166; c := [(1, 5)]; diff --git a/src/Specific/solinas64_2e171m19/CurveParameters.v b/src/Specific/solinas64_2e171m19/CurveParameters.v index d6798ba7c..6b885508b 100644 --- a/src/Specific/solinas64_2e171m19/CurveParameters.v +++ b/src/Specific/solinas64_2e171m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 34 Definition curve : CurveParameters := {| sz := 5%nat; + base := 34; bitwidth := 64; s := 2^171; c := [(1, 19)]; diff --git a/src/Specific/solinas64_2e174m17/CurveParameters.v b/src/Specific/solinas64_2e174m17/CurveParameters.v index cf37cd033..79fc4445d 100644 --- a/src/Specific/solinas64_2e174m17/CurveParameters.v +++ b/src/Specific/solinas64_2e174m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 43 Definition curve : CurveParameters := {| sz := 4%nat; + base := 43; bitwidth := 64; s := 2^174; c := [(1, 17)]; diff --git a/src/Specific/solinas64_2e174m3/CurveParameters.v b/src/Specific/solinas64_2e174m3/CurveParameters.v index d0c91efc6..74521ff93 100644 --- a/src/Specific/solinas64_2e174m3/CurveParameters.v +++ b/src/Specific/solinas64_2e174m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 43 Definition curve : CurveParameters := {| sz := 4%nat; + base := 43; bitwidth := 64; s := 2^174; c := [(1, 3)]; diff --git a/src/Specific/solinas64_2e189m25/CurveParameters.v b/src/Specific/solinas64_2e189m25/CurveParameters.v index 082da31cb..a79eb839e 100644 --- a/src/Specific/solinas64_2e189m25/CurveParameters.v +++ b/src/Specific/solinas64_2e189m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 31 Definition curve : CurveParameters := {| sz := 6%nat; + base := 31; bitwidth := 64; s := 2^189; c := [(1, 25)]; diff --git a/src/Specific/solinas64_2e190m11/CurveParameters.v b/src/Specific/solinas64_2e190m11/CurveParameters.v index 82d0e9712..fff8cf373 100644 --- a/src/Specific/solinas64_2e190m11/CurveParameters.v +++ b/src/Specific/solinas64_2e190m11/CurveParameters.v @@ -9,6 +9,7 @@ Base: 38 Definition curve : CurveParameters := {| sz := 5%nat; + base := 38; bitwidth := 64; s := 2^190; c := [(1, 11)]; diff --git a/src/Specific/solinas64_2e191m19/CurveParameters.v b/src/Specific/solinas64_2e191m19/CurveParameters.v index 9d7333943..680cd5a1e 100644 --- a/src/Specific/solinas64_2e191m19/CurveParameters.v +++ b/src/Specific/solinas64_2e191m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 38 Definition curve : CurveParameters := {| sz := 5%nat; + base := 38; bitwidth := 64; s := 2^191; c := [(1, 19)]; diff --git a/src/Specific/solinas64_2e192m2e64m1/CurveParameters.v b/src/Specific/solinas64_2e192m2e64m1/CurveParameters.v index 9505f7190..5b497fc51 100644 --- a/src/Specific/solinas64_2e192m2e64m1/CurveParameters.v +++ b/src/Specific/solinas64_2e192m2e64m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 48 Definition curve : CurveParameters := {| sz := 4%nat; + base := 48; bitwidth := 64; s := 2^192; c := [(1, 1); (2^64, 1)]; diff --git a/src/Specific/solinas64_2e194m33/CurveParameters.v b/src/Specific/solinas64_2e194m33/CurveParameters.v index c0d42734b..6ae7ab953 100644 --- a/src/Specific/solinas64_2e194m33/CurveParameters.v +++ b/src/Specific/solinas64_2e194m33/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 6%nat; + base := 32; bitwidth := 64; s := 2^194; c := [(1, 33)]; diff --git a/src/Specific/solinas64_2e196m15/CurveParameters.v b/src/Specific/solinas64_2e196m15/CurveParameters.v index 465198151..920939b0b 100644 --- a/src/Specific/solinas64_2e196m15/CurveParameters.v +++ b/src/Specific/solinas64_2e196m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 39 Definition curve : CurveParameters := {| sz := 5%nat; + base := 39; bitwidth := 64; s := 2^196; c := [(1, 15)]; diff --git a/src/Specific/solinas64_2e198m17/CurveParameters.v b/src/Specific/solinas64_2e198m17/CurveParameters.v index 2a5a102d0..689c9cf14 100644 --- a/src/Specific/solinas64_2e198m17/CurveParameters.v +++ b/src/Specific/solinas64_2e198m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 33 Definition curve : CurveParameters := {| sz := 6%nat; + base := 33; bitwidth := 64; s := 2^198; c := [(1, 17)]; diff --git a/src/Specific/solinas64_2e206m5/CurveParameters.v b/src/Specific/solinas64_2e206m5/CurveParameters.v index 23248bbc1..40d0bf636 100644 --- a/src/Specific/solinas64_2e206m5/CurveParameters.v +++ b/src/Specific/solinas64_2e206m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 41 Definition curve : CurveParameters := {| sz := 5%nat; + base := 41; bitwidth := 64; s := 2^206; c := [(1, 5)]; diff --git a/src/Specific/solinas64_2e212m29/CurveParameters.v b/src/Specific/solinas64_2e212m29/CurveParameters.v index 81e47c234..93575351f 100644 --- a/src/Specific/solinas64_2e212m29/CurveParameters.v +++ b/src/Specific/solinas64_2e212m29/CurveParameters.v @@ -9,6 +9,7 @@ Base: 35 Definition curve : CurveParameters := {| sz := 6%nat; + base := 35; bitwidth := 64; s := 2^212; c := [(1, 29)]; diff --git a/src/Specific/solinas64_2e213m3/CurveParameters.v b/src/Specific/solinas64_2e213m3/CurveParameters.v index 0219e4f79..4aaa1b85a 100644 --- a/src/Specific/solinas64_2e213m3/CurveParameters.v +++ b/src/Specific/solinas64_2e213m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 35 Definition curve : CurveParameters := {| sz := 6%nat; + base := 35; bitwidth := 64; s := 2^213; c := [(1, 3)]; diff --git a/src/Specific/solinas64_2e216m2e108m1/CurveParameters.v b/src/Specific/solinas64_2e216m2e108m1/CurveParameters.v index 266c44e73..c6e24e21e 100644 --- a/src/Specific/solinas64_2e216m2e108m1/CurveParameters.v +++ b/src/Specific/solinas64_2e216m2e108m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 43 Definition curve : CurveParameters := {| sz := 5%nat; + base := 43; bitwidth := 64; s := 2^216; c := [(1, 1); (2^108, 1)]; diff --git a/src/Specific/solinas64_2e221m3/CurveParameters.v b/src/Specific/solinas64_2e221m3/CurveParameters.v index a7d90d497..29c5a2813 100644 --- a/src/Specific/solinas64_2e221m3/CurveParameters.v +++ b/src/Specific/solinas64_2e221m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 44 Definition curve : CurveParameters := {| sz := 5%nat; + base := 44; bitwidth := 64; s := 2^221; c := [(1, 3)]; diff --git a/src/Specific/solinas64_2e222m117/CurveParameters.v b/src/Specific/solinas64_2e222m117/CurveParameters.v index e4d3701ae..8eb74563a 100644 --- a/src/Specific/solinas64_2e222m117/CurveParameters.v +++ b/src/Specific/solinas64_2e222m117/CurveParameters.v @@ -9,6 +9,7 @@ Base: 37 Definition curve : CurveParameters := {| sz := 6%nat; + base := 37; bitwidth := 64; s := 2^222; c := [(1, 117)]; diff --git a/src/Specific/solinas64_2e224m2e96p1/CurveParameters.v b/src/Specific/solinas64_2e224m2e96p1/CurveParameters.v index 6c35c0027..b76b2879f 100644 --- a/src/Specific/solinas64_2e224m2e96p1/CurveParameters.v +++ b/src/Specific/solinas64_2e224m2e96p1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 37 Definition curve : CurveParameters := {| sz := 6%nat; + base := 37; bitwidth := 64; s := 2^224; c := [(1, -1); (2^96, 1)]; diff --git a/src/Specific/solinas64_2e226m5/CurveParameters.v b/src/Specific/solinas64_2e226m5/CurveParameters.v index 840ad51e4..6f4306093 100644 --- a/src/Specific/solinas64_2e226m5/CurveParameters.v +++ b/src/Specific/solinas64_2e226m5/CurveParameters.v @@ -9,6 +9,7 @@ Base: 45 Definition curve : CurveParameters := {| sz := 5%nat; + base := 45; bitwidth := 64; s := 2^226; c := [(1, 5)]; diff --git a/src/Specific/solinas64_2e230m27/CurveParameters.v b/src/Specific/solinas64_2e230m27/CurveParameters.v index b2529f018..2b909f1bb 100644 --- a/src/Specific/solinas64_2e230m27/CurveParameters.v +++ b/src/Specific/solinas64_2e230m27/CurveParameters.v @@ -9,6 +9,7 @@ Base: 46 Definition curve : CurveParameters := {| sz := 5%nat; + base := 46; bitwidth := 64; s := 2^230; c := [(1, 27)]; diff --git a/src/Specific/solinas64_2e235m15/CurveParameters.v b/src/Specific/solinas64_2e235m15/CurveParameters.v index 4a1e49247..dec843f24 100644 --- a/src/Specific/solinas64_2e235m15/CurveParameters.v +++ b/src/Specific/solinas64_2e235m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 47 Definition curve : CurveParameters := {| sz := 5%nat; + base := 47; bitwidth := 64; s := 2^235; c := [(1, 15)]; diff --git a/src/Specific/solinas64_2e243m9/CurveParameters.v b/src/Specific/solinas64_2e243m9/CurveParameters.v index 1dc4e1640..c8dce3b16 100644 --- a/src/Specific/solinas64_2e243m9/CurveParameters.v +++ b/src/Specific/solinas64_2e243m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 40 Definition curve : CurveParameters := {| sz := 6%nat; + base := 40; bitwidth := 64; s := 2^243; c := [(1, 9)]; diff --git a/src/Specific/solinas64_2e251m9/CurveParameters.v b/src/Specific/solinas64_2e251m9/CurveParameters.v index 52ba2f753..023041b13 100644 --- a/src/Specific/solinas64_2e251m9/CurveParameters.v +++ b/src/Specific/solinas64_2e251m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 25 Definition curve : CurveParameters := {| sz := 10%nat; + base := 25; bitwidth := 64; s := 2^251; c := [(1, 9)]; diff --git a/src/Specific/solinas64_2e255m19/CurveParameters.v b/src/Specific/solinas64_2e255m19/CurveParameters.v index f113a3dcc..03964ea0c 100644 --- a/src/Specific/solinas64_2e255m19/CurveParameters.v +++ b/src/Specific/solinas64_2e255m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 42 Definition curve : CurveParameters := {| sz := 6%nat; + base := 42; bitwidth := 64; s := 2^255; c := [(1, 19)]; diff --git a/src/Specific/solinas64_2e255m2e4m2e1m1/CurveParameters.v b/src/Specific/solinas64_2e255m2e4m2e1m1/CurveParameters.v index a27a0ba4b..5c2747c0b 100644 --- a/src/Specific/solinas64_2e255m2e4m2e1m1/CurveParameters.v +++ b/src/Specific/solinas64_2e255m2e4m2e1m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 51 Definition curve : CurveParameters := {| sz := 5%nat; + base := 51; bitwidth := 64; s := 2^255; c := [(1, 1); (2^1, 1); (2^4, 1)]; diff --git a/src/Specific/solinas64_2e255m765/CurveParameters.v b/src/Specific/solinas64_2e255m765/CurveParameters.v index 83a63703d..2d1c2199b 100644 --- a/src/Specific/solinas64_2e255m765/CurveParameters.v +++ b/src/Specific/solinas64_2e255m765/CurveParameters.v @@ -9,6 +9,7 @@ Base: 42 Definition curve : CurveParameters := {| sz := 6%nat; + base := 42; bitwidth := 64; s := 2^255; c := [(1, 765)]; diff --git a/src/Specific/solinas64_2e256m189/CurveParameters.v b/src/Specific/solinas64_2e256m189/CurveParameters.v index 3e25722d7..f9d9b9c06 100644 --- a/src/Specific/solinas64_2e256m189/CurveParameters.v +++ b/src/Specific/solinas64_2e256m189/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 8%nat; + base := 32; bitwidth := 64; s := 2^256; c := [(1, 189)]; diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1/CurveParameters.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1/CurveParameters.v index 108b9aeaa..a169dfe68 100644 --- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1/CurveParameters.v +++ b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 51 Definition curve : CurveParameters := {| sz := 5%nat; + base := 51; bitwidth := 64; s := 2^256; c := [(1, 1); (2^96, -1); (2^192, -1); (2^224, 1)]; diff --git a/src/Specific/solinas64_2e256m2e32m977/CurveParameters.v b/src/Specific/solinas64_2e256m2e32m977/CurveParameters.v index 1a10fc18b..d2fb79b54 100644 --- a/src/Specific/solinas64_2e256m2e32m977/CurveParameters.v +++ b/src/Specific/solinas64_2e256m2e32m977/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 8%nat; + base := 32; bitwidth := 64; s := 2^256; c := [(1, 977); (2^32, 1)]; diff --git a/src/Specific/solinas64_2e266m3/CurveParameters.v b/src/Specific/solinas64_2e266m3/CurveParameters.v index 6215265f4..abd42c2e9 100644 --- a/src/Specific/solinas64_2e266m3/CurveParameters.v +++ b/src/Specific/solinas64_2e266m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 44 Definition curve : CurveParameters := {| sz := 6%nat; + base := 44; bitwidth := 64; s := 2^266; c := [(1, 3)]; diff --git a/src/Specific/solinas64_2e285m9/CurveParameters.v b/src/Specific/solinas64_2e285m9/CurveParameters.v index 20f884c12..52ba8173d 100644 --- a/src/Specific/solinas64_2e285m9/CurveParameters.v +++ b/src/Specific/solinas64_2e285m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 47 Definition curve : CurveParameters := {| sz := 6%nat; + base := 47; bitwidth := 64; s := 2^285; c := [(1, 9)]; diff --git a/src/Specific/solinas64_2e291m19/CurveParameters.v b/src/Specific/solinas64_2e291m19/CurveParameters.v index 59feda840..bb41bc110 100644 --- a/src/Specific/solinas64_2e291m19/CurveParameters.v +++ b/src/Specific/solinas64_2e291m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 48 Definition curve : CurveParameters := {| sz := 6%nat; + base := 48; bitwidth := 64; s := 2^291; c := [(1, 19)]; diff --git a/src/Specific/solinas64_2e321m9/CurveParameters.v b/src/Specific/solinas64_2e321m9/CurveParameters.v index 8112879f0..3014703cf 100644 --- a/src/Specific/solinas64_2e321m9/CurveParameters.v +++ b/src/Specific/solinas64_2e321m9/CurveParameters.v @@ -9,6 +9,7 @@ Base: 40 Definition curve : CurveParameters := {| sz := 8%nat; + base := 40; bitwidth := 64; s := 2^321; c := [(1, 9)]; diff --git a/src/Specific/solinas64_2e322m2e161m1/CurveParameters.v b/src/Specific/solinas64_2e322m2e161m1/CurveParameters.v index b6a2c0947..ba1442980 100644 --- a/src/Specific/solinas64_2e322m2e161m1/CurveParameters.v +++ b/src/Specific/solinas64_2e322m2e161m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 46 Definition curve : CurveParameters := {| sz := 7%nat; + base := 46; bitwidth := 64; s := 2^322; c := [(1, 1); (2^161, 1)]; diff --git a/src/Specific/solinas64_2e336m17/CurveParameters.v b/src/Specific/solinas64_2e336m17/CurveParameters.v index 3de0c9ac7..ea471461d 100644 --- a/src/Specific/solinas64_2e336m17/CurveParameters.v +++ b/src/Specific/solinas64_2e336m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 48 Definition curve : CurveParameters := {| sz := 7%nat; + base := 48; bitwidth := 64; s := 2^336; c := [(1, 17)]; diff --git a/src/Specific/solinas64_2e336m3/CurveParameters.v b/src/Specific/solinas64_2e336m3/CurveParameters.v index e0c5109e5..cc3eff42c 100644 --- a/src/Specific/solinas64_2e336m3/CurveParameters.v +++ b/src/Specific/solinas64_2e336m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 48 Definition curve : CurveParameters := {| sz := 7%nat; + base := 48; bitwidth := 64; s := 2^336; c := [(1, 3)]; diff --git a/src/Specific/solinas64_2e338m15/CurveParameters.v b/src/Specific/solinas64_2e338m15/CurveParameters.v index 5fdb17750..7aec1cf59 100644 --- a/src/Specific/solinas64_2e338m15/CurveParameters.v +++ b/src/Specific/solinas64_2e338m15/CurveParameters.v @@ -9,6 +9,7 @@ Base: 42 Definition curve : CurveParameters := {| sz := 8%nat; + base := 42; bitwidth := 64; s := 2^338; c := [(1, 15)]; diff --git a/src/Specific/solinas64_2e369m25/CurveParameters.v b/src/Specific/solinas64_2e369m25/CurveParameters.v index 13b0f66df..c321b0364 100644 --- a/src/Specific/solinas64_2e369m25/CurveParameters.v +++ b/src/Specific/solinas64_2e369m25/CurveParameters.v @@ -9,6 +9,7 @@ Base: 46 Definition curve : CurveParameters := {| sz := 8%nat; + base := 46; bitwidth := 64; s := 2^369; c := [(1, 25)]; diff --git a/src/Specific/solinas64_2e379m19/CurveParameters.v b/src/Specific/solinas64_2e379m19/CurveParameters.v index 1981adcf5..ee053dea7 100644 --- a/src/Specific/solinas64_2e379m19/CurveParameters.v +++ b/src/Specific/solinas64_2e379m19/CurveParameters.v @@ -9,6 +9,7 @@ Base: 42 Definition curve : CurveParameters := {| sz := 9%nat; + base := 42; bitwidth := 64; s := 2^379; c := [(1, 19)]; diff --git a/src/Specific/solinas64_2e382m105/CurveParameters.v b/src/Specific/solinas64_2e382m105/CurveParameters.v index 4dff15b2a..661b261b3 100644 --- a/src/Specific/solinas64_2e382m105/CurveParameters.v +++ b/src/Specific/solinas64_2e382m105/CurveParameters.v @@ -9,6 +9,7 @@ Base: 38 Definition curve : CurveParameters := {| sz := 10%nat; + base := 38; bitwidth := 64; s := 2^382; c := [(1, 105)]; diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/CurveParameters.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/CurveParameters.v index 23733bdf6..11d2ce031 100644 --- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/CurveParameters.v +++ b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 48 Definition curve : CurveParameters := {| sz := 8%nat; + base := 48; bitwidth := 64; s := 2^384; c := [(1, 1); (2^32, -1); (2^96, 1); (2^128, 1)]; diff --git a/src/Specific/solinas64_2e384m317/CurveParameters.v b/src/Specific/solinas64_2e384m317/CurveParameters.v index 3947edf8b..37ec17f42 100644 --- a/src/Specific/solinas64_2e384m317/CurveParameters.v +++ b/src/Specific/solinas64_2e384m317/CurveParameters.v @@ -9,6 +9,7 @@ Base: 48 Definition curve : CurveParameters := {| sz := 8%nat; + base := 48; bitwidth := 64; s := 2^384; c := [(1, 317)]; diff --git a/src/Specific/solinas64_2e401m31/CurveParameters.v b/src/Specific/solinas64_2e401m31/CurveParameters.v index fd79bcc09..4ef1e1a1e 100644 --- a/src/Specific/solinas64_2e401m31/CurveParameters.v +++ b/src/Specific/solinas64_2e401m31/CurveParameters.v @@ -9,6 +9,7 @@ Base: 50 Definition curve : CurveParameters := {| sz := 8%nat; + base := 50; bitwidth := 64; s := 2^401; c := [(1, 31)]; diff --git a/src/Specific/solinas64_2e413m21/CurveParameters.v b/src/Specific/solinas64_2e413m21/CurveParameters.v index bbf20f65a..dcb5b3771 100644 --- a/src/Specific/solinas64_2e413m21/CurveParameters.v +++ b/src/Specific/solinas64_2e413m21/CurveParameters.v @@ -9,6 +9,7 @@ Base: 29 Definition curve : CurveParameters := {| sz := 14%nat; + base := 29; bitwidth := 64; s := 2^413; c := [(1, 21)]; diff --git a/src/Specific/solinas64_2e414m17/CurveParameters.v b/src/Specific/solinas64_2e414m17/CurveParameters.v index 2dcf746df..8152e2881 100644 --- a/src/Specific/solinas64_2e414m17/CurveParameters.v +++ b/src/Specific/solinas64_2e414m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 46 Definition curve : CurveParameters := {| sz := 9%nat; + base := 46; bitwidth := 64; s := 2^414; c := [(1, 17)]; diff --git a/src/Specific/solinas64_2e416m2e208m1/CurveParameters.v b/src/Specific/solinas64_2e416m2e208m1/CurveParameters.v index 8280b7471..f9a5233df 100644 --- a/src/Specific/solinas64_2e416m2e208m1/CurveParameters.v +++ b/src/Specific/solinas64_2e416m2e208m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 52 Definition curve : CurveParameters := {| sz := 8%nat; + base := 52; bitwidth := 64; s := 2^416; c := [(1, 1); (2^208, 1)]; diff --git a/src/Specific/solinas64_2e444m17/CurveParameters.v b/src/Specific/solinas64_2e444m17/CurveParameters.v index df70cc9e0..99fa3f6b9 100644 --- a/src/Specific/solinas64_2e444m17/CurveParameters.v +++ b/src/Specific/solinas64_2e444m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 49 Definition curve : CurveParameters := {| sz := 9%nat; + base := 49; bitwidth := 64; s := 2^444; c := [(1, 17)]; diff --git a/src/Specific/solinas64_2e448m2e224m1/CurveParameters.v b/src/Specific/solinas64_2e448m2e224m1/CurveParameters.v index e28b2bf32..112ca94f1 100644 --- a/src/Specific/solinas64_2e448m2e224m1/CurveParameters.v +++ b/src/Specific/solinas64_2e448m2e224m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 56 Definition curve : CurveParameters := {| sz := 8%nat; + base := 56; bitwidth := 64; s := 2^448; c := [(1, 1); (2^224, 1)]; diff --git a/src/Specific/solinas64_2e450m2e225m1/CurveParameters.v b/src/Specific/solinas64_2e450m2e225m1/CurveParameters.v index e6fff2de0..8cd2a090a 100644 --- a/src/Specific/solinas64_2e450m2e225m1/CurveParameters.v +++ b/src/Specific/solinas64_2e450m2e225m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 50 Definition curve : CurveParameters := {| sz := 9%nat; + base := 50; bitwidth := 64; s := 2^450; c := [(1, 1); (2^225, 1)]; diff --git a/src/Specific/solinas64_2e452m3/CurveParameters.v b/src/Specific/solinas64_2e452m3/CurveParameters.v index 4f7a8cda9..f081f9745 100644 --- a/src/Specific/solinas64_2e452m3/CurveParameters.v +++ b/src/Specific/solinas64_2e452m3/CurveParameters.v @@ -9,6 +9,7 @@ Base: 45 Definition curve : CurveParameters := {| sz := 10%nat; + base := 45; bitwidth := 64; s := 2^452; c := [(1, 3)]; diff --git a/src/Specific/solinas64_2e468m17/CurveParameters.v b/src/Specific/solinas64_2e468m17/CurveParameters.v index 7a7086cf9..f82ed7f10 100644 --- a/src/Specific/solinas64_2e468m17/CurveParameters.v +++ b/src/Specific/solinas64_2e468m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 52 Definition curve : CurveParameters := {| sz := 9%nat; + base := 52; bitwidth := 64; s := 2^468; c := [(1, 17)]; diff --git a/src/Specific/solinas64_2e480m2e240m1/CurveParameters.v b/src/Specific/solinas64_2e480m2e240m1/CurveParameters.v index b3051d75e..cd5cb85c4 100644 --- a/src/Specific/solinas64_2e480m2e240m1/CurveParameters.v +++ b/src/Specific/solinas64_2e480m2e240m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 53 Definition curve : CurveParameters := {| sz := 9%nat; + base := 53; bitwidth := 64; s := 2^480; c := [(1, 1); (2^240, 1)]; diff --git a/src/Specific/solinas64_2e488m17/CurveParameters.v b/src/Specific/solinas64_2e488m17/CurveParameters.v index b2837cdbf..5244d6754 100644 --- a/src/Specific/solinas64_2e488m17/CurveParameters.v +++ b/src/Specific/solinas64_2e488m17/CurveParameters.v @@ -9,6 +9,7 @@ Base: 30 Definition curve : CurveParameters := {| sz := 16%nat; + base := 30; bitwidth := 64; s := 2^488; c := [(1, 17)]; diff --git a/src/Specific/solinas64_2e489m21/CurveParameters.v b/src/Specific/solinas64_2e489m21/CurveParameters.v index 8c842d205..e8980fda5 100644 --- a/src/Specific/solinas64_2e489m21/CurveParameters.v +++ b/src/Specific/solinas64_2e489m21/CurveParameters.v @@ -9,6 +9,7 @@ Base: 27 Definition curve : CurveParameters := {| sz := 18%nat; + base := 27; bitwidth := 64; s := 2^489; c := [(1, 21)]; diff --git a/src/Specific/solinas64_2e495m31/CurveParameters.v b/src/Specific/solinas64_2e495m31/CurveParameters.v index 0f461ac6c..29d85256a 100644 --- a/src/Specific/solinas64_2e495m31/CurveParameters.v +++ b/src/Specific/solinas64_2e495m31/CurveParameters.v @@ -9,6 +9,7 @@ Base: 49 Definition curve : CurveParameters := {| sz := 10%nat; + base := 49; bitwidth := 64; s := 2^495; c := [(1, 31)]; diff --git a/src/Specific/solinas64_2e511m187/CurveParameters.v b/src/Specific/solinas64_2e511m187/CurveParameters.v index 102905ed1..36c85b4db 100644 --- a/src/Specific/solinas64_2e511m187/CurveParameters.v +++ b/src/Specific/solinas64_2e511m187/CurveParameters.v @@ -9,6 +9,7 @@ Base: 36 Definition curve : CurveParameters := {| sz := 14%nat; + base := 36; bitwidth := 64; s := 2^511; c := [(1, 187)]; diff --git a/src/Specific/solinas64_2e511m481/CurveParameters.v b/src/Specific/solinas64_2e511m481/CurveParameters.v index ac65d991d..5252e1dda 100644 --- a/src/Specific/solinas64_2e511m481/CurveParameters.v +++ b/src/Specific/solinas64_2e511m481/CurveParameters.v @@ -9,6 +9,7 @@ Base: 36 Definition curve : CurveParameters := {| sz := 14%nat; + base := 36; bitwidth := 64; s := 2^511; c := [(1, 481)]; diff --git a/src/Specific/solinas64_2e512m569/CurveParameters.v b/src/Specific/solinas64_2e512m569/CurveParameters.v index 6a7620320..91ab7fcce 100644 --- a/src/Specific/solinas64_2e512m569/CurveParameters.v +++ b/src/Specific/solinas64_2e512m569/CurveParameters.v @@ -9,6 +9,7 @@ Base: 32 Definition curve : CurveParameters := {| sz := 16%nat; + base := 32; bitwidth := 64; s := 2^512; c := [(1, 569)]; diff --git a/src/Specific/solinas64_2e521m1/CurveParameters.v b/src/Specific/solinas64_2e521m1/CurveParameters.v index 33dd15c4a..0aa20d83b 100644 --- a/src/Specific/solinas64_2e521m1/CurveParameters.v +++ b/src/Specific/solinas64_2e521m1/CurveParameters.v @@ -9,6 +9,7 @@ Base: 52 Definition curve : CurveParameters := {| sz := 10%nat; + base := 52; bitwidth := 64; s := 2^521; c := [(1, 1)]; |