aboutsummaryrefslogtreecommitdiff
path: root/src/Specific/solinas32_2e158m15_6limbs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Specific/solinas32_2e158m15_6limbs')
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e158m15_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e158m15_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/femul.c50
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas32_2e158m15_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e158m15_6limbs/py_interpreter.sh4
27 files changed, 0 insertions, 450 deletions
diff --git a/src/Specific/solinas32_2e158m15_6limbs/CurveParameters.v b/src/Specific/solinas32_2e158m15_6limbs/CurveParameters.v
deleted file mode 100644
index 726a23d43..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^158 - 15
-Base: 26 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 26 + 1/3;
- bitwidth := 32;
- s := 2^158;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 6); [0; 1]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := false;
- freeze := Some true;
- ladderstep := false;
-
- mul_code := None;
-
- square_code := None;
-
- upper_bound_of_exponent_loose := None;
- upper_bound_of_exponent_tight := None;
- allowable_bit_widths := None;
- freeze_extra_allowable_bit_widths := None;
- modinv_fuel := None
- |}.
-
-Ltac extra_prove_mul_eq _ := idtac.
-Ltac extra_prove_square_eq _ := idtac.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/Synthesis.v b/src/Specific/solinas32_2e158m15_6limbs/Synthesis.v
deleted file mode 100644
index 7ff0183f6..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.CurveParameters.
-
-Module P <: PrePackage.
- Definition package : Tag.Context.
- Proof. make_Synthesis_package curve extra_prove_mul_eq extra_prove_square_eq. Defined.
-End P.
-
-Module Export S := PackageSynthesis P.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/compiler.sh b/src/Specific/solinas32_2e158m15_6limbs/compiler.sh
deleted file mode 100755
index 8c1e08024..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/compiler.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-clang -fbracket-depth=999999 -march=native -mbmi2 -mtune=native -std=gnu11 -O3 -flto -fuse-ld=lld -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Da24_hex='0x3039' -Da24_val='12345' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,26,26,27,26,26}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='20' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<158) - 15' "$@"
diff --git a/src/Specific/solinas32_2e158m15_6limbs/compilerxx.sh b/src/Specific/solinas32_2e158m15_6limbs/compilerxx.sh
deleted file mode 100755
index 359d2dba0..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/compilerxx.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-clang++ -fbracket-depth=999999 -march=native -mbmi2 -mtune=native -std=gnu++11 -O3 -flto -fuse-ld=lld -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Da24_hex='0x3039' -Da24_val='12345' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,26,26,27,26,26}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='20' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<158) - 15' "$@"
diff --git a/src/Specific/solinas32_2e158m15_6limbs/feadd.c b/src/Specific/solinas32_2e158m15_6limbs/feadd.c
deleted file mode 100644
index 5b654b294..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint32_t out[6], const uint32_t in1[6], const uint32_t in2[6]) {
- { const uint32_t x12 = in1[5];
- { const uint32_t x13 = in1[4];
- { const uint32_t x11 = in1[3];
- { const uint32_t x9 = in1[2];
- { const uint32_t x7 = in1[1];
- { const uint32_t x5 = in1[0];
- { const uint32_t x22 = in2[5];
- { const uint32_t x23 = in2[4];
- { const uint32_t x21 = in2[3];
- { const uint32_t x19 = in2[2];
- { const uint32_t x17 = in2[1];
- { const uint32_t x15 = in2[0];
- out[0] = (x5 + x15);
- out[1] = (x7 + x17);
- out[2] = (x9 + x19);
- out[3] = (x11 + x21);
- out[4] = (x13 + x23);
- out[5] = (x12 + x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e158m15_6limbs/feadd.v b/src/Specific/solinas32_2e158m15_6limbs/feadd.v
deleted file mode 100644
index 743fc13a9..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_tight -> feBW_tight -> feBW_loose
- | forall a b, phiBW_loose (add a b) = F.add (phiBW_tight a) (phiBW_tight b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/feaddDisplay.log b/src/Specific/solinas32_2e158m15_6limbs/feaddDisplay.log
deleted file mode 100644
index 1084b2659..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- ((x12 + x22), (x13 + x23), (x11 + x21), (x9 + x19), (x7 + x17), (x5 + x15)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e158m15_6limbs/feaddDisplay.v b/src/Specific/solinas32_2e158m15_6limbs/feaddDisplay.v
deleted file mode 100644
index d6ea2a6a6..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/fecarry.v b/src/Specific/solinas32_2e158m15_6limbs/fecarry.v
deleted file mode 100644
index 9548d23a3..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition carry :
- { carry : feBW_loose -> feBW_tight
- | forall a, phiBW_tight (carry a) = (phiBW_loose a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_carry ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions carry.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/fecarryDisplay.v b/src/Specific/solinas32_2e158m15_6limbs/fecarryDisplay.v
deleted file mode 100644
index ca527c233..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/femul.c b/src/Specific/solinas32_2e158m15_6limbs/femul.c
deleted file mode 100644
index 353afb2a8..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint32_t out[6], const uint32_t in1[6], const uint32_t in2[6]) {
- { const uint32_t x12 = in1[5];
- { const uint32_t x13 = in1[4];
- { const uint32_t x11 = in1[3];
- { const uint32_t x9 = in1[2];
- { const uint32_t x7 = in1[1];
- { const uint32_t x5 = in1[0];
- { const uint32_t x22 = in2[5];
- { const uint32_t x23 = in2[4];
- { const uint32_t x21 = in2[3];
- { const uint32_t x19 = in2[2];
- { const uint32_t x17 = in2[1];
- { const uint32_t x15 = in2[0];
- { uint64_t x24 = (((uint64_t)x5 * x22) + ((0x2 * ((uint64_t)x7 * x23)) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + ((0x2 * ((uint64_t)x13 * x17)) + ((uint64_t)x12 * x15))))));
- { uint64_t x25 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + (((uint64_t)x11 * x17) + ((uint64_t)x13 * x15))))) + (0xf * ((uint64_t)x12 * x22)));
- { uint64_t x26 = ((((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x19)) + ((0x2 * ((uint64_t)x9 * x17)) + ((uint64_t)x11 * x15)))) + (0xf * ((0x2 * ((uint64_t)x13 * x22)) + (0x2 * ((uint64_t)x12 * x23)))));
- { uint64_t x27 = ((((uint64_t)x5 * x19) + ((0x2 * ((uint64_t)x7 * x17)) + ((uint64_t)x9 * x15))) + (0xf * (((uint64_t)x11 * x22) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x12 * x21)))));
- { uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0xf * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- { uint64_t x29 = (((uint64_t)x5 * x15) + (0xf * ((0x2 * ((uint64_t)x7 * x22)) + ((0x2 * ((uint64_t)x9 * x23)) + (((uint64_t)x11 * x21) + ((0x2 * ((uint64_t)x13 * x19)) + (0x2 * ((uint64_t)x12 * x17))))))));
- { uint64_t x30 = (x29 >> 0x1b);
- { uint32_t x31 = ((uint32_t)x29 & 0x7ffffff);
- { uint64_t x32 = (x30 + x28);
- { uint64_t x33 = (x32 >> 0x1a);
- { uint32_t x34 = ((uint32_t)x32 & 0x3ffffff);
- { uint64_t x35 = (x33 + x27);
- { uint64_t x36 = (x35 >> 0x1a);
- { uint32_t x37 = ((uint32_t)x35 & 0x3ffffff);
- { uint64_t x38 = (x36 + x26);
- { uint64_t x39 = (x38 >> 0x1b);
- { uint32_t x40 = ((uint32_t)x38 & 0x7ffffff);
- { uint64_t x41 = (x39 + x25);
- { uint64_t x42 = (x41 >> 0x1a);
- { uint32_t x43 = ((uint32_t)x41 & 0x3ffffff);
- { uint64_t x44 = (x42 + x24);
- { uint64_t x45 = (x44 >> 0x1a);
- { uint32_t x46 = ((uint32_t)x44 & 0x3ffffff);
- { uint64_t x47 = (x31 + (0xf * x45));
- { uint32_t x48 = (uint32_t) (x47 >> 0x1b);
- { uint32_t x49 = ((uint32_t)x47 & 0x7ffffff);
- { uint32_t x50 = (x48 + x34);
- { uint32_t x51 = (x50 >> 0x1a);
- { uint32_t x52 = (x50 & 0x3ffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e158m15_6limbs/femul.v b/src/Specific/solinas32_2e158m15_6limbs/femul.v
deleted file mode 100644
index a8c7f50bd..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_loose -> feBW_loose -> feBW_tight
- | forall a b, phiBW_tight (mul a b) = F.mul (phiBW_loose a) (phiBW_loose b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/femulDisplay.log b/src/Specific/solinas32_2e158m15_6limbs/femulDisplay.log
deleted file mode 100644
index 83d0d6f1e..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x24 = (((uint64_t)x5 * x22) + ((0x2 * ((uint64_t)x7 * x23)) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + ((0x2 * ((uint64_t)x13 * x17)) + ((uint64_t)x12 * x15))))));
- uint64_t x25 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + (((uint64_t)x11 * x17) + ((uint64_t)x13 * x15))))) + (0xf * ((uint64_t)x12 * x22)));
- uint64_t x26 = ((((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x19)) + ((0x2 * ((uint64_t)x9 * x17)) + ((uint64_t)x11 * x15)))) + (0xf * ((0x2 * ((uint64_t)x13 * x22)) + (0x2 * ((uint64_t)x12 * x23)))));
- uint64_t x27 = ((((uint64_t)x5 * x19) + ((0x2 * ((uint64_t)x7 * x17)) + ((uint64_t)x9 * x15))) + (0xf * (((uint64_t)x11 * x22) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x12 * x21)))));
- uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0xf * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- uint64_t x29 = (((uint64_t)x5 * x15) + (0xf * ((0x2 * ((uint64_t)x7 * x22)) + ((0x2 * ((uint64_t)x9 * x23)) + (((uint64_t)x11 * x21) + ((0x2 * ((uint64_t)x13 * x19)) + (0x2 * ((uint64_t)x12 * x17))))))));
- uint64_t x30 = (x29 >> 0x1b);
- uint32_t x31 = ((uint32_t)x29 & 0x7ffffff);
- uint64_t x32 = (x30 + x28);
- uint64_t x33 = (x32 >> 0x1a);
- uint32_t x34 = ((uint32_t)x32 & 0x3ffffff);
- uint64_t x35 = (x33 + x27);
- uint64_t x36 = (x35 >> 0x1a);
- uint32_t x37 = ((uint32_t)x35 & 0x3ffffff);
- uint64_t x38 = (x36 + x26);
- uint64_t x39 = (x38 >> 0x1b);
- uint32_t x40 = ((uint32_t)x38 & 0x7ffffff);
- uint64_t x41 = (x39 + x25);
- uint64_t x42 = (x41 >> 0x1a);
- uint32_t x43 = ((uint32_t)x41 & 0x3ffffff);
- uint64_t x44 = (x42 + x24);
- uint64_t x45 = (x44 >> 0x1a);
- uint32_t x46 = ((uint32_t)x44 & 0x3ffffff);
- uint64_t x47 = (x31 + (0xf * x45));
- uint32_t x48 = (uint32_t) (x47 >> 0x1b);
- uint32_t x49 = ((uint32_t)x47 & 0x7ffffff);
- uint32_t x50 = (x48 + x34);
- uint32_t x51 = (x50 >> 0x1a);
- uint32_t x52 = (x50 & 0x3ffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e158m15_6limbs/femulDisplay.v b/src/Specific/solinas32_2e158m15_6limbs/femulDisplay.v
deleted file mode 100644
index 626d7c5dd..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/fesquare.c b/src/Specific/solinas32_2e158m15_6limbs/fesquare.c
deleted file mode 100644
index 588f6154b..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint32_t out[6], const uint32_t in1[6]) {
- { const uint32_t x9 = in1[5];
- { const uint32_t x10 = in1[4];
- { const uint32_t x8 = in1[3];
- { const uint32_t x6 = in1[2];
- { const uint32_t x4 = in1[1];
- { const uint32_t x2 = in1[0];
- { uint64_t x11 = (((uint64_t)x2 * x9) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x9 * x2))))));
- { uint64_t x12 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xf * ((uint64_t)x9 * x9)));
- { uint64_t x13 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xf * ((0x2 * ((uint64_t)x10 * x9)) + (0x2 * ((uint64_t)x9 * x10)))));
- { uint64_t x14 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xf * (((uint64_t)x8 * x9) + ((0x2 * ((uint64_t)x10 * x10)) + ((uint64_t)x9 * x8)))));
- { uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- { uint64_t x16 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x9)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (0x2 * ((uint64_t)x9 * x4))))))));
- { uint64_t x17 = (x16 >> 0x1b);
- { uint32_t x18 = ((uint32_t)x16 & 0x7ffffff);
- { uint64_t x19 = (x17 + x15);
- { uint64_t x20 = (x19 >> 0x1a);
- { uint32_t x21 = ((uint32_t)x19 & 0x3ffffff);
- { uint64_t x22 = (x20 + x14);
- { uint64_t x23 = (x22 >> 0x1a);
- { uint32_t x24 = ((uint32_t)x22 & 0x3ffffff);
- { uint64_t x25 = (x23 + x13);
- { uint64_t x26 = (x25 >> 0x1b);
- { uint32_t x27 = ((uint32_t)x25 & 0x7ffffff);
- { uint64_t x28 = (x26 + x12);
- { uint64_t x29 = (x28 >> 0x1a);
- { uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- { uint64_t x31 = (x29 + x11);
- { uint64_t x32 = (x31 >> 0x1a);
- { uint32_t x33 = ((uint32_t)x31 & 0x3ffffff);
- { uint64_t x34 = (x18 + (0xf * x32));
- { uint32_t x35 = (uint32_t) (x34 >> 0x1b);
- { uint32_t x36 = ((uint32_t)x34 & 0x7ffffff);
- { uint32_t x37 = (x35 + x21);
- { uint32_t x38 = (x37 >> 0x1a);
- { uint32_t x39 = (x37 & 0x3ffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e158m15_6limbs/fesquare.v b/src/Specific/solinas32_2e158m15_6limbs/fesquare.v
deleted file mode 100644
index 08f15ddca..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition square :
- { square : feBW_loose -> feBW_tight
- | forall a, phiBW_tight (square a) = F.mul (phiBW_loose a) (phiBW_loose a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_square ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions square.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/fesquareDisplay.log b/src/Specific/solinas32_2e158m15_6limbs/fesquareDisplay.log
deleted file mode 100644
index c77e995f1..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (((uint64_t)x2 * x9) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x9 * x2))))));
- uint64_t x12 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xf * ((uint64_t)x9 * x9)));
- uint64_t x13 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xf * ((0x2 * ((uint64_t)x10 * x9)) + (0x2 * ((uint64_t)x9 * x10)))));
- uint64_t x14 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xf * (((uint64_t)x8 * x9) + ((0x2 * ((uint64_t)x10 * x10)) + ((uint64_t)x9 * x8)))));
- uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- uint64_t x16 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x9)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (0x2 * ((uint64_t)x9 * x4))))))));
- uint64_t x17 = (x16 >> 0x1b);
- uint32_t x18 = ((uint32_t)x16 & 0x7ffffff);
- uint64_t x19 = (x17 + x15);
- uint64_t x20 = (x19 >> 0x1a);
- uint32_t x21 = ((uint32_t)x19 & 0x3ffffff);
- uint64_t x22 = (x20 + x14);
- uint64_t x23 = (x22 >> 0x1a);
- uint32_t x24 = ((uint32_t)x22 & 0x3ffffff);
- uint64_t x25 = (x23 + x13);
- uint64_t x26 = (x25 >> 0x1b);
- uint32_t x27 = ((uint32_t)x25 & 0x7ffffff);
- uint64_t x28 = (x26 + x12);
- uint64_t x29 = (x28 >> 0x1a);
- uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- uint64_t x31 = (x29 + x11);
- uint64_t x32 = (x31 >> 0x1a);
- uint32_t x33 = ((uint32_t)x31 & 0x3ffffff);
- uint64_t x34 = (x18 + (0xf * x32));
- uint32_t x35 = (uint32_t) (x34 >> 0x1b);
- uint32_t x36 = ((uint32_t)x34 & 0x7ffffff);
- uint32_t x37 = (x35 + x21);
- uint32_t x38 = (x37 >> 0x1a);
- uint32_t x39 = (x37 & 0x3ffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e158m15_6limbs/fesquareDisplay.v b/src/Specific/solinas32_2e158m15_6limbs/fesquareDisplay.v
deleted file mode 100644
index 5cdcfe574..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/fesub.c b/src/Specific/solinas32_2e158m15_6limbs/fesub.c
deleted file mode 100644
index 2da1f8617..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint32_t out[6], const uint32_t in1[6], const uint32_t in2[6]) {
- { const uint32_t x12 = in1[5];
- { const uint32_t x13 = in1[4];
- { const uint32_t x11 = in1[3];
- { const uint32_t x9 = in1[2];
- { const uint32_t x7 = in1[1];
- { const uint32_t x5 = in1[0];
- { const uint32_t x22 = in2[5];
- { const uint32_t x23 = in2[4];
- { const uint32_t x21 = in2[3];
- { const uint32_t x19 = in2[2];
- { const uint32_t x17 = in2[1];
- { const uint32_t x15 = in2[0];
- out[0] = ((0xfffffe2 + x5) - x15);
- out[1] = ((0x7fffffe + x7) - x17);
- out[2] = ((0x7fffffe + x9) - x19);
- out[3] = ((0xffffffe + x11) - x21);
- out[4] = ((0x7fffffe + x13) - x23);
- out[5] = ((0x7fffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e158m15_6limbs/fesub.v b/src/Specific/solinas32_2e158m15_6limbs/fesub.v
deleted file mode 100644
index 473f9de6a..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_tight -> feBW_tight -> feBW_loose
- | forall a b, phiBW_loose (sub a b) = F.sub (phiBW_tight a) (phiBW_tight b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/fesubDisplay.log b/src/Specific/solinas32_2e158m15_6limbs/fesubDisplay.log
deleted file mode 100644
index 284622c58..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x7fffffe + x12) - x22), ((0x7fffffe + x13) - x23), ((0xffffffe + x11) - x21), ((0x7fffffe + x9) - x19), ((0x7fffffe + x7) - x17), ((0xfffffe2 + x5) - x15)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e158m15_6limbs/fesubDisplay.v b/src/Specific/solinas32_2e158m15_6limbs/fesubDisplay.v
deleted file mode 100644
index 671ce87a7..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/freeze.c b/src/Specific/solinas32_2e158m15_6limbs/freeze.c
deleted file mode 100644
index c465eb5ed..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint32_t out[6], const uint32_t in1[6]) {
- { const uint32_t x9 = in1[5];
- { const uint32_t x10 = in1[4];
- { const uint32_t x8 = in1[3];
- { const uint32_t x6 = in1[2];
- { const uint32_t x4 = in1[1];
- { const uint32_t x2 = in1[0];
- { uint32_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffff1);
- { uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x3ffffff);
- { uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x3ffffff);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x7ffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x3ffffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x3ffffff);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0x7fffff1);
- { uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint32_t x34 = (x29 & 0x3ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint32_t x38 = (x29 & 0x3ffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint32_t x42 = (x29 & 0x7ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint32_t x46 = (x29 & 0x3ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint32_t x50 = (x29 & 0x3ffffff);
- { uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e158m15_6limbs/freeze.v b/src/Specific/solinas32_2e158m15_6limbs/freeze.v
deleted file mode 100644
index 4d49c7880..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition freeze :
- { freeze : feBW_tight -> feBW_limbwidths
- | forall a, phiBW_limbwidths (freeze a) = phiBW_tight a }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_freeze ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions freeze.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/freezeDisplay.log b/src/Specific/solinas32_2e158m15_6limbs/freezeDisplay.log
deleted file mode 100644
index 9df853258..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint32_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffff1);
- uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x3ffffff);
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x3ffffff);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x7ffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x3ffffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x3ffffff);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0x7fffff1);
- uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint32_t x34 = (x29 & 0x3ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint32_t x38 = (x29 & 0x3ffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint32_t x42 = (x29 & 0x7ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint32_t x46 = (x29 & 0x3ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint32_t x50 = (x29 & 0x3ffffff);
- uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e158m15_6limbs/freezeDisplay.v b/src/Specific/solinas32_2e158m15_6limbs/freezeDisplay.v
deleted file mode 100644
index be8edd8e3..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e158m15_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e158m15_6limbs/py_interpreter.sh b/src/Specific/solinas32_2e158m15_6limbs/py_interpreter.sh
deleted file mode 100755
index cf35d4d01..000000000
--- a/src/Specific/solinas32_2e158m15_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**158 - 15' -Dmodulus_bytes='26 + 1/3' -Da24='121665'